testing - 如何在没有 EULA 的情况下启动 ChromeDriver.exe?

标签 testing google-chrome selenium

我正在学习使用 Selenium (v2.20),以便领先于我们的一些程序员,他们很快将用它创建一些浏览器测试。我想在陷阱出现之前发现它们,而我已经陷入了其中。

当我创建 ChromeDriver 时,它总是会显示“Google Chrome EULA”并显示两个按钮:“接受并运行”和“取消”。因为我希望这是一个自动化测试,所以让用户单击按钮是不可能的。

我查看了 Chromium Command Switches 的列表但没有找到任何有效的,也没有找到任何提到 EULA 的。如果我(在断点处)单击“接受并运行”,然后让代码继续,则测试工作正常。

导致问题的代码如下:

using (var driverService = ChromeDriverService.CreateDefaultService(@"C:\Apps\ChromeDriver\"))
{
    driverService.Start();

    // This line pops up the EULA
    IWebDriver driver = new ChromeDriver(@"C:\Apps\ChromeDriver\");

    // rest of test...
}

还有其他人遇到过这个问题吗?如果是这样,你是如何解决的?

2012 年 4 月 4 日更新
我只是在工作时的计算机上运行相同的代码,并且在没有触发 EULA 的情况下成功了(与 Slanec 的经验一致)。这让我相信原因是环境。我正在研究两个系统(均为 Win7 x64)之间的差异以确定原因。一旦获得更多信息,我就会更新。

非常感谢

-赛斯

最佳答案

如果您仍然遇到此问题,则会发生错误,因为您每次运行测试时都会打开一个全新的 Chrome 浏览器实例,从而触发 EULA。如果您将默认的 Chrome 配置文件复制到您选择的自定义位置,然后将“--user-data-dir=yourcustomlocation”标志添加到 ChromeOptions,则可以绕过 EULA 并打开现有的配置文件。

ChromeOptions crOptions = new ChromeOptions();
crOptions.AddArgument(@"--user-data-dir=C:\custom location"); 
return new ChromDriver(crOptions);

关于testing - 如何在没有 EULA 的情况下启动 ChromeDriver.exe?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9936070/

相关文章:

java - Google Foobar Challenge Doomsday Fuel 的隐藏测试用例未通过

delphi - 如何检测可能正在分析我的软件的调试器或其他工具?

firefox - 如何将 Aptana 测试保存在单个选项卡中?

javascript - Chrome 用户脚本

google-chrome - Chrome 未报告 CSP 违规行为

angularjs - 使用 Protractor 运行 e2e 测试用例时显示光标移动

testing - 使用 JMeter 对 Camel 路由的 JUnit 测试用例进行负载测试

javascript - Chrome 扩展 Javascript 仅在图标单击时运行

node.js - 在 chrome 驱动程序中停用 selenium 的浏览器通知

java - 无法使用 Selenium 单击div中弹出窗口的按钮