Java 同一测试类多次未运行

Java 同一测试类多次未运行,java,testng,Java,Testng,我想运行相同的测试方法作为多个测试的一部分。TestNG只运行我的测试方法一次。两种情况下的参数都不同。我非常感谢任何关于如何实现这一目标的建议 public class Test1 extends TestBase{ @Test public void test1(){ System.out.println("This si test1"); } } public class TestBase { @Parameters({ "param1" })

我想运行相同的测试方法作为多个测试的一部分。TestNG只运行我的测试方法一次。两种情况下的参数都不同。我非常感谢任何关于如何实现这一目标的建议

public class Test1 extends TestBase{

   @Test
   public void test1(){
      System.out.println("This si test1");
   }

}


public class TestBase {

   @Parameters({ "param1" })
   @BeforeMethod
   public void setup(@Optional("VCHS") String param1) {
      System.out.println("the parameter is "+param1);
   }

   @Parameters({ "param1" })
   @BeforeTest(groups="VC2-UI",alwaysRun=true)
   protected void baseSetUpVC2EndPoint(@Optional("VC2") String param1){
      System.out.println("This is base"+param1);
   }

   @Parameters({ "param1" })
   @BeforeTest(groups="VC1-UI")
   protected void baseSetUpVC1EndPoint(@Optional("VC1") String param1){
      System.out.println("This is base and "+param1);
   }

}

<suite name="Testing" verbose="1" configfailurepolicy="continue">
      <test name="VC2-UI">
      <parameter name="param1"  value="VC2"/>
      <classes>
         <class name="Test1"></class>
      </classes>
   </test>
   <test name="VC1-UI">
      <parameter name="param1"  value="VC1"/>
      <classes>
         <class name="Test1"></class>
      </classes>
   </test>

</suite>

您可以使用invocationCount注释

你是怎么运作的?无论您编写了什么,如果您使用testng.xml在test1类中使用不同的参数运行测试方法两次,那么它都会运行两次。我在这里使用不同的参数运行相同的测试,因此调用计数不是一个选项。数据提供程序也不适合我,因为我希望从xml文件运行测试,并希望在不更改类的情况下更改参数。