背景:我正在使用TestNG执行测试,我有一个用@Test注释的类,如果你愿意,它会生成一个数字或ID,并且相同的数字是我第二次测试的输入值。是否可以在TestNG测试之间传递值?
答案 0 :(得分:0)
您应该创建一个处理整个案例的测试。测试不能相互依赖,它被认为是不好的做法。如果您使用maven测试顺序,则执行在不同环境中可能会有所不同。
答案 1 :(得分:0)
不好或不做,可以通过简单地使用类字段来完成。只需确保您的案例以可预测的顺序执行(例如,使用@Test(priority)或dependsOn TestNG功能)。
答案 2 :(得分:0)
不确定。例如,如果您有两个相关的测试,则可以通过测试上下文属性将值从一个测试传递到另一个测试:
@Test
public void test1(ITestContext context) { //Will be injected by testNG
/* Do the test here */
context.setAttribute("myOwnAttribute", "someTestResult");
}
@Test(dependsOnMethods = "test1")
public void test2(ITestContext context) { //Will be injected by testNG
String prevResult = (String) context.getAttribute("myOwnAttribute");
}