我有一个具有注释的方法,@Test
并在优先级之后设置了它priority=1
的 data-Provider 注释,但是当我运行我的类时,它会跳过具有的方法priority=1
并执行具有的另一个方法priority=2
。
我想我做得不对。请帮忙。
我有一个具有注释的方法,@Test
并在优先级之后设置了它priority=1
的 data-Provider 注释,但是当我运行我的类时,它会跳过具有的方法priority=1
并执行具有的另一个方法priority=2
。
我想我做得不对。请帮忙。
@Test(priority = 1, dataProvider = "...")
@Test(dataProvider = "...", priority = 1)
设置 apriority
和 adataProvider
应该按预期工作。这是一个示例测试来证明这一点:
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import static org.testng.Assert.assertEquals;
public class ExampleTest {
private int runFirstInvocationCount = 0;
@Test(priority = 2)
public void runSecond() {
assertEquals(runFirstInvocationCount, data().length);
}
@DataProvider
public static Object[][] data() {
return new Object[][]{
{/* your data values here */},
{/* your data values here */},
{/* your data values here */}
};
}
@Test(priority = 1, dataProvider = "data")
public void runFirst(/* your data parameters here */) {
runFirstInvocationCount++;
}
}