在 TestNG 中执行 class 的所有测试方法,同时仅访问 class 的特定组
Executing all test methods of a class while accessing only particular group of that class in TestNG
我有以下代码片段-
Class 1 :- DependencyOne.java
public class DependencyOne
{
@Test(groups = "xxx")
public void parentTestMethodOne()
{
System.out.println("parent Test Method One");
}
@Test(groups = "vizac")
public void parentTestMethodTwo()
{
System.out.println("parent Test Method Two");
}
@Test(groups = "xxx")
public void parentTestMethodThree()
{
System.out.println("parent Test Method Three");
}
}
另一个class是
Class 2 :- DependencyTwo.java
public class DependencyTwo
{
@Test(dependsOnMethods = "testMethodThree")
public void testMethodOne()
{
System.out.println("Test Method One");
}
@Test(dependsOnGroups = "xxx")
public void testMethodTwo()
{
System.out.println("Test Method Two");
}
@Test(dependsOnMethods = "testMethodTwo")
public void testMethodThree()
{
System.out.println("Test Method Three");
}
}
当我执行 DependencyTwo 时,它给出以下输出 -
parent 测试方法一
parent测试方法三
parent 测试方法二
测试方法二
测试方法三
测试方法一
我期待的是——
parent 测试方法一
parent测试方法三
测试方法二
测试方法三
测试方法一
任何人都可以向我解释为什么即使我只访问其他 class 的指定组的测试方法,请告诉我如何只访问其他 [=49] 中指定组的测试方法=].
目前我知道的另一种选择
只需创建一个 testing.xml
文件,您可以在其中管理您想要 include/exclude-
的方法
在您的 xml 文件中使用以下内容 -
<test name="MyTest">
<groups>
<run>
<exclude name="vizac"/>
</run>
</groups>
<classes>
<class name="com.flipkart.DependencyOne" />
<class name="com.flipkart.DependencyTwo" />
</classes>
</test>
我有以下代码片段-
Class 1 :- DependencyOne.java
public class DependencyOne
{
@Test(groups = "xxx")
public void parentTestMethodOne()
{
System.out.println("parent Test Method One");
}
@Test(groups = "vizac")
public void parentTestMethodTwo()
{
System.out.println("parent Test Method Two");
}
@Test(groups = "xxx")
public void parentTestMethodThree()
{
System.out.println("parent Test Method Three");
}
}
另一个class是
Class 2 :- DependencyTwo.java
public class DependencyTwo
{
@Test(dependsOnMethods = "testMethodThree")
public void testMethodOne()
{
System.out.println("Test Method One");
}
@Test(dependsOnGroups = "xxx")
public void testMethodTwo()
{
System.out.println("Test Method Two");
}
@Test(dependsOnMethods = "testMethodTwo")
public void testMethodThree()
{
System.out.println("Test Method Three");
}
}
当我执行 DependencyTwo 时,它给出以下输出 -
我期待的是——
任何人都可以向我解释为什么即使我只访问其他 class 的指定组的测试方法,请告诉我如何只访问其他 [=49] 中指定组的测试方法=].
目前我知道的另一种选择
只需创建一个 testing.xml
文件,您可以在其中管理您想要 include/exclude-
在您的 xml 文件中使用以下内容 -
<test name="MyTest">
<groups>
<run>
<exclude name="vizac"/>
</run>
</groups>
<classes>
<class name="com.flipkart.DependencyOne" />
<class name="com.flipkart.DependencyTwo" />
</classes>
</test>