2

我现在使用 TestNG 已经有一段时间了,但我仍然不知道这两个(@Test以及< test>在 suite.xml 中)的预期目的是什么,以及它们要表达的抽象是什么。

此外,如果有人可以分享他们对 TestNG 中其他元素的行为差异。例如,由或@AfterTest @BeforeTest触发,其中一个进入最终执行报告。@Test<test>@Test< test>

4

2 回答 2

3

@Test表示测试方法。<test>是您如何在testng.xml.

于 2013-03-05T17:09:06.263 回答
3

在您的第二个问题上添加塞德里克的回答

@AfterTest 在 xml 之后运行

@AfterMethod 在您的 java 文件中的 @Test 之后运行。

例如。

public class TestCases{
@Test
public void test1()..
@Test
public void test2()..
}

public class MoreTestCases{
@Test
public void test1()..
@Test
public void test2()..
}

所以你有 4 个用 @Test 注释的测试用例

现在,因为在 xml 中是您想要构建测试运行的方式

 <test>
   <classes>
    <class name = TestCases>
      <methods>
        <include name = test1/>
      </methods>
    </class>
   <class name = TestCases>
     <methods>
       <include name = test1/>
     </methods>
   </class>
  </classes>
</test>

所以你现在只从你的两个班级运行 test1 。

术语在开始时有点混乱......但我希望它有助于澄清一些事情。

于 2013-03-05T20:00:50.250 回答