Selenium.WebDriver - I get error when I try to run my test in Chrome

后端 未结 4 1841
暖寄归人
暖寄归人 2021-02-19 04:28

I get this error when I try to run my test in Chrome:

Initialization method AutomationUsingSelenium.SmuladorChrome.MyTestInitialize threw exception. OpenQ

相关标签:
4条回答
  • 2021-02-19 05:00

    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>
    
    0 讨论(0)
  • 2021-02-19 05:11

    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();
    
    0 讨论(0)
  • 2021-02-19 05:13

    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.

    0 讨论(0)
  • 2021-02-19 05:16

    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.

    0 讨论(0)
提交回复
热议问题