为什么ChromeDriver在调试模式下可以运行,但在发行版上却不能运行?

时间:2019-09-02 20:17:07

标签: c# visual-studio selenium-chromedriver

因此,我有一个正在创建的 c#控制台应用

它使用Selenium ChromeDriver创建WordPress菜单。 在调试模式下可以正常工作。

现在我发布它,并在安装该应用程序时运行它,这给了我这个错误:

  

当前t目录中或当前目录中不存在chromedriver.exe文件   在PATH环境变量上的目录中。

我认为这是我收到此错误的地方:

ChromeOptions options = new ChromeOptions();
options.AddArgument("start-maximized");
driver = new ChromeDriver(options);

我已经在Internet上进行了搜索,但似乎没有任何效果,我认为这与Visual Studio中的发布有关。

3 个答案:

答案 0 :(得分:0)

将chromedriver.exe从“调试”文件夹复制到“发布”文件夹。

答案 1 :(得分:0)

假设您已经安装了NuGet软件包Selenium.WebDriver.ChromeDriver。您可以在\Selenium.WebDriver.ChromeDriver\driver\win32\chromedriver.exe中找到最新的Chrome驱动程序,然后根据系统选择正确的版本。

将文件添加到项目中,然后在文件属性中的“复制到输出目录”下选择“始终复制”或“如果更新则复制”。

此问题应该有帮助

Selenium WebDriver.ChromeDriver Nuget package installed, but not working for MSTest

答案 2 :(得分:0)

从项目所有者github页面上:

“在默认配置下,chromedriver(.exe)不包含在发布的文件中。此行为是设计使然。”

如果要在发布的文件中包含“ chromedriver(.exe)”,请定义“ _PUBLISH_CHROMEDRIVER”编译符号(在“项目”>“属性”>“构建”下)

enter image description here