Selenium.WebDriver. Я получаю сообщение об ошибке при попытке выполнить мой тест в Chrome.
Я получаю ошибку, когда пытаюсь запустить свой тест в Chrome:
Метод инициализации AutomationUsingSelenium.SmuladorChrome.MyTestInitialize исключение. OpenQA.Selenium.DriverServiceNotFoundException: OpenQA.Selenium.DriverServiceNotFoundException
В чем причина?
Ответы
Ответ 1
Наконец, я разрешаю свою проблему.
1) Я скопировал chromedriver.exe в каталог Chrom , но вы можете поместить в любой каталог, я решил поставить здесь.
2). Инициализировал новый экземпляр класса ChromeDriver, используя указанный // путь к каталогу, содержащему ChromeDriver.exe
Мой код:
IWebDriver drive = new ChromeDriver
("C:\\Documents and Settings\\...\\ApplicationData\\Google\\Chrome\\Application");
И он работает просто отлично. Спасибо всем.
Ответ 2
Предположим, что 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();
ИЛИ
driver = new ChromeDriver(@"G:\Selenium_Csharp\\Jar\\chromedriver_win32");
driver.Url ="http://www.gmail.com";
driver.Manage().Window.Maximize();
Ответ 3
Установите Selenium.Chrome.WebDriver
пакет NuGet в проект, и вы не получите ошибку снова.
В Visual Studio щелкните правой кнопкой мыши Project, выберите Manage NuGet Packages..., найдите Selenium.Chrome.WebDriver и нажмите "Установить".
Наслаждайтесь селеном.
Ответ 4
Это ошибка, которую я вижу:
OpenQA.Selenium.DriverServiceNotFoundException: файл chromedriver.exe не существует в текущем каталоге или в каталоге в переменной среды PATH.
Я решил эту проблему, указав в командной строке аргумент "testettings" для запуска модульных тестов.
например.
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>