如何在@AftertTest完成后运行测试

时间:2016-10-17 11:13:58

标签: java selenium-webdriver testng

我正在使用TestNG学习Java中的Selenium Webdriver。我正在使用Google登录页面进行测试。

我无法顺序运行测试用例。我想做的是:

  1. 运行@BeforeTest
  2. 运行测试编号1(登录成功)
  3. 运行@AfterTest(关闭浏览器和驱动程序)
  4. 等待AfterTest方法完成然后运行测试编号2(登录失败)
  5. 但我所经历的是:

    1. 运行@BeforeTest
    2. 运行测试编号1(登录成功)
    3. 在测试编号1完成后立即运行测试编号2(浏览器未关闭且登录状态与先前测试保持一致
    4. 运行AfterTest
    5. 我花了2天但却无法弄清楚如何。我的代码如下:

      =============================================== ==================

      EXT-X-TARGETDURATION

1 个答案:

答案 0 :(得分:2)

来自TestNG documentation

  

@BeforeTest :在运行属于标记内的类的任何测试方法之前,将运行带注释的方法。

     

@AfterTest :在标记内的类的所有测试方法都已运行后,将运行带注释的方法。

如果您想在每个测试方法之前和/或之后运行某些内容,则需要使用@BeforeMethod@AfterMethod

  

@BeforeMethod :将在每个测试方法之前运行带注释的方法。

     

@AfterMethod :将在每个测试方法之后运行带注释的方法。