【发布时间】:2014-01-17 05:39:27
【问题描述】:
我正在一个浏览器中运行 Selenium 自动化测试,但同时,我想在另一个窗口中打开浏览器并执行检查邮件、谷歌搜索电子邮件等操作,然后活动模式或焦点进入当前工作窗口,不是自动化测试运行浏览器。
是否可以在运行自动化测试时在浏览器上工作?
【问题讨论】:
标签: testing selenium automation
我正在一个浏览器中运行 Selenium 自动化测试,但同时,我想在另一个窗口中打开浏览器并执行检查邮件、谷歌搜索电子邮件等操作,然后活动模式或焦点进入当前工作窗口,不是自动化测试运行浏览器。
是否可以在运行自动化测试时在浏览器上工作?
【问题讨论】:
标签: testing selenium automation
一般来说,在进行 UI 自动化时,您不能使用测试机器来执行任何其他涉及使用键盘或鼠标的任务。
由于 WebDriver 自动化执行键盘和鼠标输入,例如键入文本和单击项目,因此您将不断干扰浏览器的 WebDriver 实例并在其他应用程序中进行自己的鼠标和键盘交互。
这将对您和自动化产生不利影响,双方都无法做他们想做的事!
您应该使用单独的测试机,或使用VirtualBox (free) 等软件设置虚拟机。
【讨论】:
你试过吗?
Selenium 使用 WebDriver 与浏览器的特定实例进行通信,而不是当前聚焦的窗口。因此,您应该能够继续使用浏览器窗口的其他实例。最好的办法就是尝试。
如果它不起作用,我建议启动并运行 VM,并将其用作您的测试环境。一般来说,这就是我将所有内容分开的工作方式。
【讨论】:
我在 Firefox 上运行了我的测试,然后在旁边使用了 chrome。否则,请在远程机器上运行测试。
【讨论】:
你可以做两件事 1. 使用第三个工具来运行测试用例,比如 Jenkins。这样测试将在内存中运行。 2.如果您使用的是firefox,您可以创建一个单独的firefox配置文件,这样如果您同时使用firefox,应该会有任何问题。 要创建新的 FF 配置文件,请使用以下代码:
FirefoxProfile profile = new FirefoxProfile();
profile.setAcceptUntrustedCertificates(false);
profile.setAssumeUntrustedCertificateIssuer(true);
DesiredCapabilities dc = DesiredCapabilities.firefox();
dc.setCapability(FirefoxDriver.PROFILE, profile);
WebDriver driver = new FirefoxDriver(dc);
【讨论】: