I get this error when I try to run my test in Chrome:
Initialization method AutomationUsingSelenium.SmuladorChrome.MyTestInitialize threw exception. OpenQ
This is the error i see: OpenQA.Selenium.DriverServiceNotFoundException: The chromedriver.exe file does not exist in the current directory or in a directory on the PATH environment variable.
I resolved this problem by specifying the 'testsettings' argument in the command to run the unit tests.
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
I use "/testsettings:......\Local.Testsettings" because the Local.testsettings file is 4 levels higher than the level where I am executing this command. You should change it accordingly.
This is the command used in ccnet.config file
<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>
Lets assume chromedriver.exe
is present in below path: G:\Selenium_Csharp\Jar\chromedriver_win32\chromedriver.exe
To execute your test in Chrome set the path to the directory/folder containing chromedriver.exe
without selecting chromedriver.exe
file name.
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();
Install Selenium.Chrome.WebDriver
NuGet package to the project and you will not get the error again.
In Visual Studio, right click the Project, click Manage NuGet Packages... , Search for Selenium.Chrome.WebDriver and click install.
Enjoy Selenium.
Finally I resolved my issue as follows:
1) I copied chromedriver.exe in Chrome directory link, but you can put it in any directory. I decided to put it here.
2) I Initialized a new instance of the ChromeDriver
class using the specified
// path to the directory containing ChromeDriver.exe
My code:
IWebDriver drive = new ChromeDriver
("C:\\Documents and Settings\\...\\ApplicationData\\Google\\Chrome\\Application");
And it works just perfect. Thanks All.