开发手册 欢迎您!
软件开发者资料库

TestNG - 异常测试

TestNG提供了跟踪代码异常处理的选项.您可以测试代码是否抛出所需的异常.这里 expectedExceptions 参数与@Test注释一起使用.现在,让我们看看 @Test(expectedExceptions)正在运行.创建一个类创建一个java类是在 C:\>中测试了 Message

TestNG提供了跟踪代码异常处理的选项.您可以测试代码是否抛出所需的异常.这里 expectedExceptions 参数与@Test注释一起使用.现在,让我们看看 @Test(expectedExceptions)正在运行.

创建一个类

创建一个java类是在 C:\>中测试了 MessageUtil.java . TestNG_WORKSPACE 的.在printMessage()方法中添加错误条件.

/** This class prints the given message on console.*/public class MessageUtil {   private String message;   //Constructor   //@param message to be printed   public MessageUtil(String message) {      this.message = message;    }   // prints the message   public void printMessage() {      System.out.println(message);      int a =0;      int b = 1/a;   }      // add "Hi!" to the message   public String salutationMessage() {      message = "Hi!" + message;      System.out.println(message);      return message;   }   }  

创建测试用例类

  • 创建一个java测试类,比如说, ExpectedExceptionTest.java .

  • 添加一个预期的异常ArithmeticException到testPrintMessage()测试用例.

ExpectedExceptionTest.java 的java类文件> C:\> TestNG_WORKSPACE .

import org.testng.Assert;import org.testng.annotations.Test;public class ExpectedExceptionTest {   String message = "Manisha";   MessageUtil messageUtil = new MessageUtil(message);      @Test(expectedExceptions = ArithmeticException.class)   public void testPrintMessage() {      System.out.println("Inside testPrintMessage()");           messageUtil.printMessage();        }      @Test   public void testSalutationMessage() {      System.out.println("Inside testSalutationMessage()");      message = "Hi!" + "Manisha";      Assert.assertEquals(message,messageUtil.salutationMessage());   }}

创建测试运行器

中创建testng.xml C:\> TestNG_WORKSPACE 执行测试用例.

                           

使用javac编译MessageUtil,测试用例类.

C:\TestNG_WORKSPACE>javac MessageUtil.java TestJunit.java

现在,运行Test Runner,它将运行在提供的Test Case类中定义的测试用例.

C:\TestNG_WORKSPACE>java -cp "C:\TestNG_WORKSPACE" org.testng.TestNG testng.xml

验证输出. testPrintMessage()测试用例将被传递.

Inside testPrintMessage()ManishaInside testSalutationMessage()Hi!Manisha===============================================Suite1Total tests run: 2, Failures: 0, Skips: 0===============================================