TestNG - 执行测试
-
简述
测试用例使用 TestNG班级。此类是在 TestNG 框架中运行测试的主要入口点。用户可以创建自己的 TestNG 对象并以多种不同的方式调用它,例如 --
在现有的 testng.xml 上。
-
在一个完全由 Java 创建的综合 testng.xml 上。
-
通过直接设置测试类。
您还可以定义要包含或排除的组、分配参数等。命令行参数是 --
-d outputdir:指定输出目录。
-
-testclass class_name:指定一个或多个类名。
-
-testjar jar_name:指定包含测试的 jar。
-
-sourcedir src1;src2: ; 源目录的分隔列表(仅在使用 javadoc 注释时使用)。
-
-target
-
-groups
-
-testrunfactory
-
-listener
在下面的示例中,我们将在现有的 testng.xml 中创建 TestNG 对象。 -
-
创建一个类
创建一个要测试的java类,比如说, MessageUtil.java 在 /work/testng/src./* * 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 String printMessage() { System.out.println(message); return message; } }
-
创建测试用例类
-
创建一个 java 测试类,比如说, SampleTest.java.
-
将测试方法 testPrintMessage() 添加到您的测试类。
-
向方法 testPrintMessage() 添加注解@Test。
-
使用TestNG的assertEquals API实现测试条件并检查条件。
创建一个名为的java类文件 SampleTest.java 在 /work/testng/src.import org.testng.Assert; import org.testng.annotations.Test; public class SampleTest { String message = "Hello World"; MessageUtil messageUtil = new MessageUtil(message); @Test public void testPrintMessage() { Assert.assertEquals(message, messageUtil.printMessage()); } }
-
-
创建 testng.xml
接下来,让我们在其中创建 testng.xml 文件 /work/testng/src, 执行测试用例。此文件以 XML 格式捕获您的整个测试。该文件使您可以轻松地在一个文件中描述所有测试套件及其参数,您可以将其签入代码存储库或通过电子邮件发送给同事。它还可以轻松提取测试的子集或拆分多个运行时配置(例如,testngdatabase.xml 将仅运行测试您的数据库的测试)。<?xml version = "1.0" encoding = "UTF-8"?> <suite name = "Sample test Suite"> <test name = "Sample test"> <classes> <class name = "SampleTest" /> </classes> </test> </suite>
使用 javac 编译测试用例。/work/testng/src$ javac MessageUtil.java SampleTest.java
现在,运行 testng.xml,它将运行 <test> 标记中定义的测试用例。/work/testng/src$ java org.testng.TestNG testng.xml
验证输出。Hello World =============================================== Sample test Suite Total tests run: 1, Failures: 0, Skips: 0 ===============================================