我有TestNg类看起来像下面的代码:
我在Jenkins上有两个作业:job1和job2 job1执行TestsFluxPro,而job2执行TestsVente测试
我的问题是如何配置詹金斯(Jenkins),使其在每个作业中运行选定的类测试,例如在作业1中我要执行com。 AZ。 testsFlux。 TestsVente !!!
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite" parallel="false">
<listeners>
<listener class-name="org.uncommons.reportng.HTMLReporter" />
<listener class-name="org.uncommons.reportng.JUnitXMLReporter"
/>
<listener class-name="com.az.utilities.CustomListeners" />
</listeners>
<test name="Managetestss" group-by-instances="true">
<parameter name="browser" value="firefox"></parameter>
<classes>
<class name="com.az.testsFlux.TestsFluxPro" />
<class name="com.az.testsFlux.TestsVente" />
</classes>
</test>
</suite>
最佳答案
重新考虑使用testng.xml,您将无法从Jenkins对其进行参数化。
在具有-testclass
参数的地方可以运行TestNG测试in command-line mode:
-testclass可以在类路径中找到的类的逗号分隔列表。用逗号分隔的类文件列表(例如org.foo.Test1,org.foo.test2
)。
因此,您应该能够开始执行测试,例如:
对于com.az.testsFlux.TestsFluxPro
:
java -cp "/path/to/test.jar;/path/to/test/dependencies/*" org.testng.TestNG -testclass com.az.testsFlux.TestsFluxPro
对于
com.az.testsFlux.TestsVente
java -cp "/path/to/test.jar;/path/to/test/dependencies/*" org.testng.TestNG -testclass com.az.testsFlux.TestsVente
要同时运行:
java -cp "/path/to/test.jar;/path/to/test/dependencies/*" org.testng.TestNG -testclass com.az.testsFlux.TestsVente,com.az.testsFlux.TestsFluxPro
等等