Selenium.WebDriver - 当我尝试在Chrome中运行测试时出错

时间:2012-05-18 14:00:13

标签: selenium automated-tests selenium-chromedriver

当我尝试在Chrome中运行测试时出现错误:

初始化方法AutomationUsingSelenium.SmuladorChrome.MyTestInitialize抛出异常。 OpenQA.Selenium.DriverServiceNotFoundException:OpenQA.Selenium.DriverServiceNotFoundException

原因是什么?

4 个答案:

答案 0 :(得分:13)

最后我解决了我的问题。

1)我在 Chrom 目录link中复制了 chromedriver.exe ,但你可以放在任何目录中,我决定放在这里。

2)我使用指定的初始化ChromeDriver类的新实例         //包含ChromeDriver.exe的目录的路径

我的代码:

IWebDriver drive = new ChromeDriver
("C:\\Documents and Settings\\...\\ApplicationData\\Google\\Chrome\\Application");

它的效果非常完美。全部谢谢。

答案 1 :(得分:5)

让我们假设chromedriver.exe出现在以下路径中:G:\Selenium_Csharp\Jar\chromedriver_win32\chromedriver.exe

要在Chrome中执行测试,请设置包含chromedriver.exe的目录/文件夹的路径,而不选择chromedriver.exe文件名。

driver = new ChromeDriver("G:\\Selenium_Csharp\\Jar\\chromedriver_win32");

driver.Url ="http://www.gmail.com";
driver.Manage().Window.Maximize();

OR

driver = new ChromeDriver(@"G:\Selenium_Csharp\\Jar\\chromedriver_win32");

driver.Url ="http://www.gmail.com";
driver.Manage().Window.Maximize();

答案 2 :(得分:5)

Selenium.Chrome.WebDriver NuGet包安装到项目中,您将不会再次收到错误。

  

在Visual Studio中,右键单击“项目”,单击“管理NuGet包...”,“搜索Selenium.Chrome.WebDriver”,然后单击“安装”。

享受Selenium。

答案 3 :(得分:0)

这是我看到的错误: OpenQA.Selenium.DriverServiceNotFoundException:chromedriver.exe文件不存在于当前目录或PATH环境变量的目录中。

我通过在命令中指定'testsettings'参数来解决此问题,以运行单元测试。

E.g。

E:\Development\SampleProject\SampleProject.MvcWebApp\SampleProject.MvcWebApp.JavaScriptUnitTests\JavaScriptUnitTests\bin\Debug>"C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\mstest.exe" /testcontainer:JavaScriptUnitTests.dll /category:"JavaScriptUnitTests" /testsettings:..\..\..\Local.Testsettings /resultsfile:..\..\..\..\..\MsTestResults\SampleProject.MvcWebApp.JavaScript.Tests.trx

我使用“/testsettings :.......Local.Testsettings”,因为Local.testsettings文件比我执行此命令的级别高4级。你应该相应地改变它。

这是ccnet.config文件中使用的命令

<exec>
    <executable>C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\mstest.exe</executable>
    <baseDirectory>SampleProject.MvcWebApp\SampleProject.MvcWebApp.JavaScriptUnitTests\JavaScriptUnitTests\bin\Debug</baseDirectory>
    <buildArgs>/testcontainer:JavaScriptUnitTests.dll /category:"JavaScriptUnitTests" /testsettings:..\..\..\Local.Testsettings /resultsfile:..\..\..\..\..\MsTestResults\SampleProject.MvcWebApp.JavaScript.Tests.trx</buildArgs>
    <successExitCodes>0</successExitCodes>
</exec>