当前位置: 首页 > 文档资料 > TestNG 中文教程 >

执行测试(Executing Tests)

优质
小牛编辑
122浏览
2023-12-01

测试用例使用TestNG类执行。 此类是在TestNG框架中运行测试的主要入口点。 用户可以创建自己的TestNG对象并以多种不同方式调用它,例如 -

  • 在现有的testng.xml上。

  • 在合成的testng.xml上,完全由Java创建。

  • 通过直接设置测试类。

您还可以定义要包含或排除的组,分配参数等。命令行参数是 -

  • -d outputdir:指定输出目录。

  • -testclass class_name:指定一个或多个类名。

  • -testjar jar_name:指定包含测试的jar。

  • -sourcedir src1; src2 :; 分隔的源目录列表(仅在使用javadoc注释时使用)。

  • -target

  • -groups

  • -testrunfactory

  • -listener

我们将在下面的示例中创建一个现有testng.xml的TestNG对象。

创建一个类 (Create a Class)

C:\》TestNG_WORKSPACE创建一个要测试的java类,比如MessageUtil.java

/*
* 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;
   }   
}  

创建测试用例类 (Create Test Case Class)

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

  • 将测试方法testPrintMessage()添加到测试类。

  • 向方法testPrintMessage()添加注释@Test。

  • 使用TestNG的assertEquals API实现测试条件并检查条件。

C:\》TestNG_WORKSPACE创建一个名为SampleTest.java的java类文件。

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());
   }
}

Create testng.xml

接下来,让我们在C:\》TestNG_WORKSPACE创建testng.xml文件,以执行测试用例。 此文件以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编译测试用例。

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

现在,运行testng.xml,它将运行标记中定义的测试用例。

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

验证输出。

Hello World
===============================================
Sample test Suite
Total tests run: 1, Failures: 0, Skips: 0
===============================================