繁体   English   中英

WebDriver测试用例的问题

[英]Issue with WebDriver test case

我已经使用WebDriver编写了一个测试案例,用一种方法关闭了浏览器,然后再次打开无法调用的浏览器

driver.close(); 我通过上述命令关闭了浏览器,再次打开了我的浏览器driver.get(url)但出现错误“与远程浏览器通信出错,可能已死亡”

好吧,您用driver.close();杀死了浏览器driver.close(); 为了使用该驱动程序,您必须使用driver = new FirefoxDriver(capabilities);类的东西来创建一个新driver = new FirefoxDriver(capabilities);

如果您确实要在导航到新URL之前关闭浏览器,请执行以下操作:

driver.quit();
driver = new FirefoxDriver();
driver.get(url);

但是,为什么要先导航到新URL之前关闭浏览器?

我可以想到以下两个原因之一:

  1. 您想转到下一个URL,并清除浏览器的历史记录。

    如果确实如此,那么deleteAllCookies将完成此工作。

  2. 您无法转到下一个URL,因为某些弹出警报阻止您执行此操作。

    如果事实确实如此,那么既不closequit将做的工作。

从评论开始回答。

我想我有你的问题。 尽管您已经调用close(),并且它仅应关闭当前窗口,但是如果要在多个窗口之间切换,则应使用此方法。

对于您的情况,只是不要关闭驱动程序,它将使用相同的窗口打开URL。

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();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM