我有一个maven项目,有3个TestNG套件和4个测试类,我想在jenkins中运行一个特定的套件,我搜索了很多,但只找到了一个命令放在goaltest-DsuiteXmlFile=Jquery中。xml
来指定特定的套件,但当我这样做时,它也会运行所有其他套件。我被困在这里很长时间了,请引导我完成这个过程。我还想知道是否有任何设置我可以这样做,如果我选择一个套件运行,我可以运行该套件的任何特定类。我已附上我的项目结构在这里的形象,任何输入将不胜感激。谢谢:)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="WebGuru99">
<test thread-count="5" name="TestGuru99">
<classes>
<class name="com.selenium.vivek.Example2.WebGuru99_1"/>
<class name="com.selenium.vivek.Example2.WebGuru99_2"/>
</classes>
</test> <!-- Test -->
</suite> <!-- Suite -->
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="WebJquery">
<test thread-count="5" name="TestJquery">
<classes>
<class name="com.selenium.vivek.Example2.WebJquery"/>
</classes>
</test> <!-- Test -->
</suite> <!-- Suite -->
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="WebRediff">
<test thread-count="5" name="TestRediff">
<classes>
<class name="com.selenium.vivek.Example2.WebRediff"/>
</classes>
</test> <!-- Test -->
</suite> <!-- Suite -->
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>Suites/Guru99.xml</suiteXmlFile>
<suiteXmlFile>Suites/Rediff.xml</suiteXmlFile>
<suiteXmlFile>Suites/Jquery.xml</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</plugin>
</plugins>
所以,我在这里没有找到任何答案,所以继续我的旅程,探索可以做些什么来绕过这个问题,并找到一个解决方案。因此,面对这种问题的任何人都可能从中受益。
使用
我在pom中添加了'
suiteFile
'作为标记,然后在中传递它
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<suiteFile></suiteFile>
</properties>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>${suiteFile}</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</plugin>
然后在jenkins,我通过了
clean测试-DsuiteFile=Suites\Jquery。xml
作为目标,它只运行该套件。希望对某人有所帮助:)
主套房.java 对于每个测试套件,都有包含@Test的类 例如 TestSuite1.java TestClass1.java 所以我的问题是如何运行TestSuite1、TestSuite2
我有一个TestNG XML,格式如下: 这个套件有两个类,每个类都有一些@Test方法。现在我想让我的套件以同样的顺序再运行3次,就像它运行一样,即所有的class1方法,然后是class2方法。我怎样才能做到这一点?我正在使用Selenium WebDriver和核心Java来运行我的自动化套件。
我有一个Selenium-Java-TestNG-Maven套件。我正在通过pom XML运行这个。但是maven在testng xml中运行了两次测试。但是,当我运行与TestNG套件相同的TestNG xml时,它的行为是正常的,也就是说,它只像预期的那样运行一次TestNG xml中的测试。 `http://maven.apache.org/xsd/maven-4.0.0.xsd“>4.0.
我正在使用Maven对一个网站运行TestNG集成测试。目前,我可以使用此命令运行特定的测试类: 我还希望能够指定一个TestNG套件XML文件来运行一系列带有特定参数的类。 我可以在我的POM中设置故障安全插件来接受suiteXmlFiles参数,如下所示: 让我发出这个命令: 但现在我不能用-Dit了。test=“MyTestClassname”选项,因为Maven现在试图传递一个空值作为套件
我试图使用命令行在Maven中运行特定的TestNG套件。 我有两个不同的套房 我的文件如下所示 我正在使用命令 然而,它只会运行回归套件,即使使用somke.xml