我的课程中有很多方法,当我运行代码时,方法是随机调用的,但在我的类中,每个方法都依赖于它的前置者,即第二种方法依赖于第一种方法,第三种方法依赖于第二种方法,依此类推我希望按
我已经尝试了下面的metods并测试了代码,但仍然随机调用这些方法
//using sequential @Test(sequential = true) public void Method1(){ } @Test(sequential = true) public void Method2(){ } //using singleThreaded @Test(singleThreaded=true) public void Method1(){ } @Test(singleThreaded=true) public void Method2(){ }
我也在testng中传递了以下参数
<test name="Test" preserve-order="true" annotations="JDK"> <classes> <class name="com.test" > <methods> <include name="method1"/> <include name="method2"/> <include name="method3"/>... </methods> </class> </classes> </test> </suite>
当我用@Test(dependsOnMethod =“”)测试它时,不是顺序执行方法,而是跳过方法.
如何在testng中按顺序执行测试?
如果你想以某种特定的方式运行你的所有测试方法,而不仅仅是在@test注释中添加优先级.见如下: –@test(priority=0) function1() {} @test(priority=1) function2() {} @test(priority=5) function3() {} @test(priority=3) function4() {} @test(priority=2) function5() {}
在这种情况下,函数1首先调用而不是函数2,因为优先级,函数5将调用而不是函数3.