How to Create Test Cases for Exceptions in Java

2025 年 3 月 31 日 | 阅读 3 分钟

Java 中,创建异常的测试用例并不困难。Java 的 JUnit 测试工具提供了一种跟踪代码异常处理的方式。我们可以编写测试用例来检查代码是否会抛出期望的异常。

为了编写和运行异常的测试用例,我们需要在系统中拥有 JUnit jar 文件,或者在我们的系统中设置 JUnit 环境。要测试异常,我们应该遵循以下步骤:

  1. 创建待测类
  2. 创建用于测试异常的测试用例类
  3. 创建 Test Runner 类来执行测试用例
How to Create Test Cases for Exceptions in Java

创建待测类

我们首先创建一个需要测试的类。我们将创建一个名为 ShowMessage 的类。在这个类中,我们将创建两个方法,即 show() 方法和 finalMessage() 方法。通过构造函数,我们设置 message 属性的值。在 show() 方法中,我们将打印消息并生成除零异常。在 finalMessage() 方法中,我们将给定的消息与 "Hello!" 字符串连接起来。

上述理论的代码如下所示:

ShowMessage.java

创建测试用例类

现在,我们需要为测试用例编写名为 TestShowMessage.java 的 Java 类。在这个类中,我们将创建一个带有默认字符串消息的 msg 属性,并通过传递该默认字符串来创建 ShowMessage 类的对象。我们将创建一个 testshow() 方法,在该方法中我们将添加预期的 ArithmeticException 异常。在此方法中,我们将通过其对象调用 ShowMessage 类的 show() 方法。我们将创建另一个测试方法 testfinalMessage(),在该方法中我们将 "Hello!" 与默认消息连接起来。在此消息中,我们将使用 assertEquals() 方法检查实际结果与预期结果。

上述理论的代码如下所示:

TestShowMessage.java

创建 TestRunner 类来执行测试用例

现在,我们需要创建一个 Java 类 TestRunner,通过它我们将执行我们的测试用例。此类包含 main() 方法,在其中我们使用 JUnitCorerunClasses() 方法来运行 TestShowMessage 类。在此方法中,我们传递包含测试用例的代码的类文件。runClasses() 方法返回的结果将存储在类型为 Resultresult 变量中。

结果包含成功和失败结果。可能有一个以上的失败,为了打印每个失败,我们可以使用循环迭代结果。

上述理论的代码如下所示:

TestRunner.java

输出

为了在 Java 中运行测试用例,我们使用 javac 命令编译所有与之相关的 Java 类。然后,我们只运行包含 main 方法的类,即 TestRunner.java。当我们运行 TestRunner.java 文件时,它会返回 true 结果,如下所示:

How to Create Test Cases for Exceptions in Java

因此,为了编写异常类的测试用例,我们需要使用 expected 关键字将异常类添加到该测试用例中。