如何在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上搜索过,但我没有找到任何有用的信息。
答案 0 :(得分:0)
您必须使用BeforeMethod
和AfterMethod
注释,在此示例中,首先调用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();
}
}