我使用WebDriver编写了一个测试用例,我用一种方法关闭了浏览器,然后又打开了无法调用的浏览器
driver.close();
我通过上面的命令关闭浏览器,再次打开浏览器driver.get(url)
但我得到错误
'与远程浏览器通信时出错可能已经死了'
答案 0 :(得分:0)
你用你的driver.close();
杀了浏览器
要使用驱动程序,您必须使用driver = new FirefoxDriver(capabilities);
答案 1 :(得分:0)
如果您确实想在导航到新网址之前关闭浏览器,请执行以下操作:
driver.quit();
driver = new FirefoxDriver();
driver.get(url);
但是,为什么要在首先导航到新网址之前关闭浏览器?
我可以想到以下两个原因之一:
您希望在清除浏览器历史记录的情况下转到下一个网址。
如果情况确实如此,那么deleteAllCookies
将完成这项工作。
您无法转到下一个网址,因为某些弹出式提醒会阻止您这样做。
如果情况确实如此,那么close
而非quit
都无法完成这项工作。
答案 2 :(得分:0)
转而回复评论。
我想我得到了你的问题。虽然你已经调用了close()并且它只应该关闭当前窗口,但如果你想在多个窗口之间切换,你应该使用它。
对于你的情况,只是不要关闭驱动程序,它将使用相同的窗口打开网址。
答案 3 :(得分:0)
You have to use following way if you want to close the current browser and open
a new one:
webDriver.Close();
//Goto the Target website
WebDriver.Navigate().GoToUrl("url");
And you can use following way if you want to close the browser and kill the
web driver:
webDriver.Close();
webDriver.Quit();