dependsOnMethods返回一个值

时间:2011-01-14 06:24:05

标签: java testng

我有一个简单的场景,其中一个方法依赖于其他方法 方法。而另一种方法返回一个值 - 所以班级看起来像 -

公共类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

1 个答案:

答案 0 :(得分:2)

虽然文档中似乎没有提及,但我也经历过用@Test注释的类必须具有void返回类型。如果您需要其他方法提供的数据,可以尝试Data Provider mechanism的TestNG。