当我尝试在Chrome中运行测试时出现此错误:
初始化方法 AutomationUsingSelenium.SmuladorChrome.MyTestInitialize 抛出异常。OpenQA.Selenium.DriverServiceNotFoundException: OpenQA.Selenium.DriverServiceNotFoundException
原因是什么?
最后我解决了我的问题,如下所示:
1(我在Chrome目录链接中复制了chromedriver.exe,但您可以将其放在任何目录中。我决定把它放在这里。
2( 我使用指定的初始化了 ChromeDriver
类的新实例 包含 ChromeDriver 的目录的路径.exe
我的代码:
IWebDriver drive = new ChromeDriver
("C:\Documents and Settings\...\ApplicationData\Google\Chrome\Application");
它的效果非常完美。谢谢大家。
Selenium.Chrome.WebDriver
NuGet 包安装到项目中,您将不会再次收到错误。
在 Visual Studio 中,右键单击项目,单击"管理 NuGet 包...",搜索"Selenium.Chrome.WebDriver",然后单击"安装"。
享受硒。
假设chromedriver.exe
存在于以下路径中:G:Selenium_CsharpJarchromedriver_win32chromedriver.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();
或
driver = new ChromeDriver(@"G:Selenium_Csharp\Jar\chromedriver_win32");
driver.Url ="http://www.gmail.com";
driver.Manage().Window.Maximize();
看到的错误:OpenQA.Selenium.DriverServiceNotFoundException:chromedriver.exe 文件不存在于当前目录或 PATH 环境变量上的目录中。
我通过在命令中指定"testsettings"参数来运行单元测试来解决此问题。
例如
E:DevelopmentSampleProjectSampleProject.MvcWebAppSampleProject.MvcWebApp.JavaScriptUnitTestsJavaScriptUnitTestsbinDebug>"C:Program Files (x86)Microsoft Visual Studio 10.0Common7IDEmstest.exe" /testcontainer:JavaScriptUnitTests.dll /category:"JavaScriptUnitTests" /testsettings:......Local.Testsettings /resultsfile:..........MsTestResultsSampleProject.MvcWebApp.JavaScript.Tests.trx
我使用"/testsettings:......\Local.Testsettings",因为Local.testsettings文件比我执行此命令的级别高4级。您应该相应地更改它。
这是 ccnet.config 文件中使用的命令
<exec>
<executable>C:Program Files (x86)Microsoft Visual Studio 10.0Common7IDEmstest.exe</executable>
<baseDirectory>SampleProject.MvcWebAppSampleProject.MvcWebApp.JavaScriptUnitTestsJavaScriptUnitTestsbinDebug</baseDirectory>
<buildArgs>/testcontainer:JavaScriptUnitTests.dll /category:"JavaScriptUnitTests" /testsettings:......Local.Testsettings /resultsfile:..........MsTestResultsSampleProject.MvcWebApp.JavaScript.Tests.trx</buildArgs>
<successExitCodes>0</successExitCodes>
</exec>