我有一个简单的场景,其中一个方法依赖于其他方法 方法。而另一种方法返回一个值 - 所以班级看起来像 -
公共类Temp1 {
@Test
public Integer test1() {
Reporter.log("<b>in test1</b>");
System.out.println("in test1");
return null;
}
@Test(dependsOnMethods={"test1"})
public void test2() {
Reporter.log("in test2");
System.out.println("in test2");
}
}
现在当我执行此操作时,遇到以下异常 -
org.testng.TestNGException:
com.core.tests.Temp1.test2() is depending on nonexistent method
com.core.tests.Temp1.test1
at
org.testng.internal.MethodHelper.findMethodsNamed(MethodHelper.java:
143)
at org.testng.internal.MethodHelper.topologicalSort(MethodHelper.java:
472)
at org.testng.internal.MethodHelper.sortMethods(MethodHelper.java:
544)
at
org.testng.internal.MethodHelper.internalCollectAndOrderMethods(MethodHelper.java:
77)
at
org.testng.internal.MethodHelper.collectAndOrderMethods(MethodHelper.java:
49).........................
虽然如果没有方法test1()的返回类型,它运行良好。 有没有办法解决这个问题?
由于 ~T
答案 0 :(得分:2)
虽然文档中似乎没有提及,但我也经历过用@Test
注释的类必须具有void
返回类型。如果您需要其他方法提供的数据,可以尝试Data Provider mechanism的TestNG。