在方法之前的\之前的TestNG应如何与组一起使用

时间:2013-08-08 09:16:08

标签: java maven testng

我有我的测试和Maven的java项目来构建它。

测试结构:

  • QuickTest(TestBase的孩子)
  • LongTest(TestBase的孩子)
  • TestBase(QuickTest和LongTest的父级)

TestBase只包含三种方法:

  • @BeforeClass - 运行浏览器
  • @BeforeMethod - 打开主页
  • @AfterSuite - 关闭浏览器

QuickTest包含4个带有@Test注释和(groups = {"quick"})注释的快速测试方法 LongTest包含@DataProvider和一个@Test以使用(groups = {"long"})

在Maven中我有一些配置文件可以启动不同的浏览器。我的目标是使用:

mvn test -P ie9 -Dgroups=quick

只运行快速测试,但我的TestBase课程出现问题。我总是添加@BeforeClass@BeforeMethod以及工作正常的(alwaysRun = true)

但我的@AfterSuite方法不起作用。当我向其添加(alwaysRun = true)时,此方法将始终记录错误并失败。

对于快速组我想要测试顺序:

BeforeClass - > BeforeMethod - > TestMethod1 - > BeforeMethod - > TestMethodX - > AfterSuite

对于长组我想要订购:

BeforeClass - > BeforeMethod - > TestMethodWithData1 - > BeforeMethod - > TestMethodWithDataX - > AfterSuite

我应该使用哪些注释以及我的testng.xml应该是什么样的?

0 个答案:

没有答案