在Java Selenium中执行测试用例后打开/关闭浏览器

时间:2017-09-26 12:19:53

标签: java selenium-webdriver

如何在Selenium中执行每个测试用例后打开和关闭浏览器?

场景:让我们假设有一个主类文件,比如" TestCases.JAVA",包含几个测试用例方法,我想打开浏览器每个测试用例的开头,然后在执行后关闭浏览器。

目前,我收到以下错误:

  

org.openqa.selenium.SessionNotCreatedException:试图运行命令   没有建立连接

演示测试用例设计就是这样......

public class TC_Login   {

    @Test(priority=1)
    public static void TC_VerifyPageTitle_1() {  
        TestBaseSetup.OpenBrowser();
        String actual=TestBaseSetup.driver.getTitle();
        String expected= "Google";

        Assert.assertEquals(actual, expected);

        test.log(LogStatus.INFO, "Starting verify Title test");
        test.log(LogStatus.INFO, "Ending verify Title test");
        test.log(LogStatus.PASS, "Title verified");

        TestBaseSetup.closeBrowser();
    }

    @Test(priority=2)
    public static void TC_Login_2() {
        TestBaseSetup.OpenBrowser();

        String actual=TestBaseSetup.driver.getTitle();
        String expected= "Google";

        Assert.assertEquals(actual, expected);

        test.log(LogStatus.INFO, "Starting verify Title test");
        test.log(LogStatus.INFO, "Ending verify Title test");
        test.log(LogStatus.PASS, "Title verified");
        Action.Wait(3);
        Re_Login.signIn();

        TestBaseSetup.closeBrowser();

        // test.log(LogStatus.INFO, "Browser closed");
    }

}

我在Google上搜索过,但我没有找到任何有用的信息。

1 个答案:

答案 0 :(得分:0)

您必须使用BeforeMethodAfterMethod注释,在此示例中,首先调用launchBrowser(),然后调用URLcall1(),然后调用closeBrowser(),第二次launchBrowser()然后调用URLcall2()然后调用closeBrowser()

请在下面找到代码:

public class Stackoverflow_demo {

WebDriver d=null;
@BeforeMethod
public void launchBrowser()
{
 d =new FirefoxDriver();
}

@Test(priority=1)
public void URLcall1()
{
 d.get("https://google.co.in");   
}

@Test(priority=2)
public void URLcall2()
{
d.get("https://stackoverflow.com");   
}

@AfterMethod
public void closeBrowser()
{
d.close();
}     
}