Dodałem pakiet nuget WebDriver.ChromeDriver do mojego rozwiązania, które zawiera plik ChromeDriver.exe, wymagany do uruchomienia Selenium WebDriver zautomatyzowanych testów za pomocą Chrome. Patrząc na zawartość pakietu, to po prostu plik zawiera następujący plik:Pakiet Selenium WebDriver.ChromeDriver Nuget zainstalowany, ale nie działa dla MSTest
tools\chromedriver.exe
Co to jest powinien zrobić, to dodać ten folder do zmiennej środowiskowej PATH tak że chromedriver.exe jest dostępny za pośrednictwem następujący kod (jest to w projekcie unittest użyciem MSTest):
[TestMethod]
public void LaunchWebsite_Chrome()
{
// create ChromeDriver - this should work if chromedriver.exe
// is known to the environment PATH variable
IWebDriver driver = new ChromeDriver();
driver.Navigate().GoToUrl("http://localhost/");
}
jednak ja wciąż otrzymuję następujący wyjątek:
Plik chromedriver.exe nie istnieje w bieżącym katalogu lub w katalogu na zmiennej środowiskowej PATH. Sterownik można pobrać pod adresem http://code.google.com/p/chromium/downloads/list.
Patrząc na dokumentacji Nuget sugeruje, że coś w narzędziach folderu pakietu Nuget będą dodawane do zmiennej środowiskowej PATH się automatycznie:
http://docs.nuget.org/docs/creating-packages/creating-and-publishing-a-package: folderze Narzędzia pakietu jest przeznaczony dla skryptów programu Power Shell i programów dostępnych z poziomu konsoli programu Package Manager. Po skopiowaniu folderu do projektu docelowego jest on dodawany do zmiennej środowiskowej `$ env: Path (PATH).
Jednak wydaje się, że to nie działa. Uruchomiłem nawet echo %PATH%
w linii poleceń i nie pokazuje on mojego katalogu narzędzi jako zarejestrowany.
Co robię źle?
Znalazłeś odpowiedź na to pytanie? – Phphelp
Niezupełnie, ale myślę, że źle zrozumiałem, jakie ustawienie oznacza zmienna środowiskowa $ env: Path (PATH) - zakładam, że jest ustawiona tylko podczas instalacji pakietu. Użyłem obejścia opisanego przez @Arran –