当前位置: 首页 > 面试题库 >

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

鲜于意
2023-03-14
问题内容

我正在学习使用Selenium(v2.20)来领先一些
即将使用它创建浏览器测试的程序员。我想在
陷阱到达之前发现它们,而我却跌入了一个陷阱。

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

我查看了Chromium CommandSwitches 但没有找到任何有效的开关,也没有提到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...
}

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

UPDATE 4/4/12
我只是在工作中在计算机上运行了相同的代码,但我成功了而未
触发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);


 类似资料:
  • 不久前,在Android Studio之外有一个外部AVD Manager应用程序。在某个时候,它被移除了。有了AS 4.0(或者3.x),有没有办法在没有Studio的情况下启动现有的AVD? 我指的不是Bluestacks等第三方模拟器,而是我用于开发的模拟器。

  • 问题内容: 我需要在Linux / OSX终端下使用“干净的” shell(例如bash),而无需任何用户配置,但是每次启动时,它都会从某些文件(例如〜/ .bashrc)中读取配置信息。每当我需要“干净”的外壳时,我都可以修改该文件,并在完成后将其还原,但是有没有更简单的方法来执行此操作,例如命令? 问题答案: 您可以传递和命令行选项: 您可以在手册页中找到有关这些选项的文档。

  • 我已经将Java项目从Eclipse导出为“可运行的JAR文件”,并带有“将所需库提取到生成的JAR中”。当我尝试通过双击启动它时,什么也没有发生,只是文件闪烁。当我尝试像那样从终端运行它时,它工作得很好。

  • 我是Quarkus新手,正在使用Eclipse和Quarkus插件。 无论我是手动使用启动还是使用Eclipse夸克启动配置,应用程序似乎总是在运行测试。 我看到了类似的东西 有一段时间什么都没发生,直到我看到Quarkus标志、我的日志消息等。 也许我还没有仔细阅读文档,但我发现没有配置来关闭它并直接在开发模式下启动应用程序。 有人能帮我吗?

  • 问题内容: 我正在尝试设置spring xml配置,而不必创建进一步的。但是,即使我将数据库属性包括在 spring.xml: 我在这里想念什么? 问题答案: 在entityManagerFactory bean定义中指定“ packagesToScan”和“ persistenceUnitName”属性。 请注意,这适用于Spring版本> 3.1

  • 我已经安装了Android SDK最新版本和Eclipse。但我也想试试Android Studio。 我看过这个和这个帖子,但是那些解决方案改变了Android Studio(一旦下载并安装)使用的SDK实例。我想要的不是下载另一个SDK,当我已经在我的机器上安装了它。