【问题标题】:TestNG browser not closing after each test每次测试后TestNG浏览器不关闭
【发布时间】:2017-07-31 02:12:35
【问题描述】:

学习 selenium 和 TestNG

我有一个 testNG.xml 文件,该文件指定了 3 个测试

每个测试(下面的示例)都有一个 @AfterTest 注释和一个关闭浏览器的方法。浏览器都保持打开状态,直到 SUITE 完成。我认为@AfterTest 在每次测试后都会运行,那么为什么在每次测试后不调用treadown

测试:

    import java.io.IOException;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;

import junit.framework.Assert;
import pageObjects.LandingPage;
import resources.base;

public class validateNavBar extends base {

    public static Logger log = LogManager.getLogger(base.class.getName());

    @BeforeTest
    public void init() throws IOException {
        driver = initializeDriver();
        driver.get(prop.getProperty("url"));
    }

    @Test
    public void basePagenavigation() throws IOException {

        // Go to landing page and click Login
        LandingPage lp = new LandingPage(driver);
        // lp.getTitle().getText();
        Assert.assertTrue("NavBar is displayed", lp.getNavBar().isDisplayed());
        log.info("NavBar is visible");
    }

    @AfterTest
    public void teardown() {
        log.info("Closing browser");
        driver.close();
    }
}

日志:

10:45:59.768 [main] INFO  resources.base - Login test with params: 
     username: mark@mark.com
     Password: mark
     Text: Restricted user
10:46:06.299 [main] INFO  resources.base - Login test with params: 
     username: fred@fred.com
     Password: fred
     Text: Non Restricted user
10:46:06.492 [main] INFO  resources.base - NavBar is visible
10:46:06.493 [main] INFO  resources.base - Closing browser
10:46:07.821 [main] INFO  resources.base - Closing browser
10:46:08.502 [main] INFO  resources.base - Closing browser

从日志中可以看出,@AfterTest 在 SUITE 末尾的每个测试中执行(或者这就是我的样子。

任何建议

TIA

标记

【问题讨论】:

    标签: testng


    【解决方案1】:

    TestNG 不是 JUnit。

    @AfterTest 在每个 <test> 节点之后运行,您想要的是 @AfterMethod

    您应该查看文档:http://testng.org/doc/documentation-main.html

    【讨论】:

    • 谢谢。在我遇到这个问题之前,我认为它使用了类文件中的注释而不是 testng.xml 文件中的元素。
    猜你喜欢
    • 2016-05-19
    • 2015-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多