如何在Selenium中使用已经打开的firefox进行测试

kar*_*k27 11 java selenium-webdriver

这个宣言

WebDriver driver = new FirefoxDriver();
Run Code Online (Sandbox Code Playgroud)

总是打开Firefox的新实例窗口.它不使用已经打开的Firefox.

任何人都可以让我知道如何使用已经打开的Firefox进行测试,而不是打开一个新的?

joi*_*aad 10

像这样使用远程Web驱动程序.

System.Uri uri = new System.Uri("http://localhost:7055/hub");
WebDriver = new RemoteWebDriver(uri, DesiredCapabilities.Firefox());
Run Code Online (Sandbox Code Playgroud)

它将使用已经打开的Firefox浏览器.您可以在此博客文章中查看此方法的详细信息.

http://www.binaryclips.com/2016/03/selenium-web-driver-in-c-how-to.html

  • 你知道Python的等价物吗? (2认同)

小智 1

请小心,因为如果驱动程序崩溃一次,那么之后必须执行的所有测试用例都会受到影响,因为它们使用相同的驱动程序,而且您将共享 cookie,并且可能之前已经打开了会话, ETC。

更可靠的解决方案是为每个测试用例创建一个新的 WebDriver,因为这样做可以减少所有测试用例对其他测试用例的依赖。

如果激励您的原因是创建每个 WebDriver 所需的时间,也许您可​​以开始考虑并行运行测试用例,例如使用 TestNG。

谢谢

  • 这不是回答问题。这样做的动机不是这里的问题。这应该被否决;正确答案如下。 (3认同)