【转载】TestNG指南4-运行TestNG

可用两种方式调用TestNG:

本节仅解释如何从命令行调用TestNG,如果你对其它调用方式感兴趣,请点击以上相应链接。

假设TestNG已经加入了在你的类路径中,可以用下面的简单方式调用TestNG:

 

java org.testng.TestNG testng1.xml [testng2.xml testng3.xml ...]

 必须指定最少一个XML文件,描述你想要运行的TestNG 测试套件。另外,可以使用下面的命令行开关:

 

命令行参数

选项

参数

说明

-d

目录       

生成测试报告的目录(默认为test-output)。

-sourcedir

用分号分隔的目录列表

带有javadoc注解的测试源文件目录,这个选项只在使用javadoc类型的注解时才有必要。(例如:“src/test”或 “src/test/org/testng/eclipse-plugin; src/test/org/testng/testng)

-testclass

用逗号分隔的类列表,可以在类路径中找到

用逗号分隔的类文件列表(例如:

org.foo.Test1,org.foo.test2”)

-groups

用逗号分隔的组列表

希望运行的组列表(例如:“windows,linux,regression”)

-excludegroups

用逗号分隔的组列表

不希望运行的组列表

-testrunfactory

在类路径中能够找到的Java

指定测试的runner,这个类需要实现

org.testng.ITestRunnerFactory 接口。

-listener

用逗号分隔的Java类,可以在类路径中找到

指定测试的监听器,这个类需要实现

org.testng.ITestListener 接口。

-parallel

methods|tests

如果指定设置运行测试时如何使用并行线程的默认机制.如果不设置,默认机制是完全不使用并行线程。本设置可被测试套件定义覆盖。

-threadcount

并行运行测试时默认使用的线程数

设置并行运行测试使用的默认最大线程数。仅在选择并行模式时才有效(例如,使用-parallel选项)。本设置可被测试套件定义覆盖。

-suitename

测试套件使用的默认名称

指定在命令行上定义的测试套件名称。如果suite.xml文件或源代码指定了不同的测试套件名称,则本选项将被忽略。如果在名称前后加双引号,则可以创建带空格的测试套件名称,如“like this”

-testname

测试使用的默认名称

指定在命令行上定义的测试名称。如果suite.xml文件或源代码指定了不同的测试名称,则本选项将被忽略。如果在名称前后加双引号,则可以创建带空格的测试名称,如“like this”

-reporter

为自定义报告监听器使用的扩展配置

类似-listener选项,除了在reporter实例上允许配置JavaBeans形式的属性。

例如:-reporter com.test.MyReporter: methodFilter=*insert*, enableFiltering=true

You can have as many occurences of this option, one for each reporter that needs to be added.

 

可以通过不带任何参数调用TestNG来获得本文档。

也可以将命令行开关写到txt文件中,例如:c:/command.txt, 然后告诉TestNG使用这个文件类取回参数:

 

C:> more c:/command.txt

  -d test-output testng.xml

  C:> java org.testng.TestNG @c:/command.txt

 另外,TestNG可以通过Java虚拟机的命令行来传递属性,例如:

 

java -Dtestng.test.classpath="c:/build;c:/java/classes;" org.testng.TestNG testng.xml

 下面是TestNG能够理解的属性:

 

系统属性

属性

类型

说明

testng.test.classpath

用分号分隔的包含测试类的一系列目录

如果设置了本属性,TestNG将使用它代替从类路径中查找测试类。这在XML文件中使用包标签,并且在类路径中有大量的类而大多数类并非测试类的时候很方便。

 

例如:

 

java org.testng.TestNG -groups windows,linux -testclass org.test.MyTest

 注意: ant 任务testng.xml允许使用更多的参数来启动TestNG(包含的方法、指定的参数,等等),因此,当你打算学习TestNG并想要快速运行TestNG时,应该考虑使用命令行。

猜你喜欢

转载自sariyalee.iteye.com/blog/1724299
今日推荐