YiiFramework Запуск приемочных тестов с Selenium и chromedriver

ilya12345

Новичок
Хочу протестировать приемочными тестами js(на странице у меня осуществляется перезагрузка страницы с ajax)
В документации по codecept пишут https://codeception.com/docs/modules/WebDriver
Код:
Локальное тестирование
Селен

Для запуска Selenium Server вам потребуется Java, а также браузер Chrome или Firefox.

Загрузить автономный сервер Selenium
Чтобы использовать Chrome, установите ChromeDriver . Чтобы использовать Firefox, установите GeckoDriver .
Запуск Selenium сервера: java -jar selenium-server-standalone-3.xx.xxx.jar. Чтобы найти вариант использования двоичного использования Chromedriver -Dwebdriver.chrome.driver=./chromedriver. Для использования Geckodriver -Dwebdriver.gecko.driver=./geckodriver.
Запустите сервер Selenium перед выполнением тестов.

java -jar "/path/to/selenium-server-standalone-xxx.jar"

вот мой acceptance.yml
Код:
suite_namespace: frontend\tests\acceptance
actor: AcceptanceTester
modules:
       enabled:
          - WebDriver:
             url: "http://my-project.ru/frontend/web/index.php"
             browser: chrome
             port: 5555

Selenium и chromedriver у меня лежат в папке D:\


запускаю Selenium как в инструкции сказано
java -jar selenium-server-standalone-3.14.0.jar
потом -Dwebdriver.chrome.driver=D:/chromedriver
выходит вот такое сообщение:


покопался по форумам пишут что запускают вот так :
java -Dwebdriver.chrome.driver=./chromedriver -jar selenium-server-standalone-3.5.3.jar -port свободный

https://stackoverflow.com/questions/45960634/yii2-selenium-standalone-server-using-chromedriver-error

сделал так


При запуске теста всплывает вот такая ошибка:

Код:
 [Facebook\WebDriver\Exception\SessionNotCreatedException] Unable to create new service: ChromeDriverService
Build info: version: '3.14.0', revision: 'aacccce0', time: '2018-08-02T20:13:22.693Z'
System info: host: 'PROGRAMMER', ip: '167.182.34.65', os.name: 'Windows 10', os.arch: 'x86', os.version: '10.0', java.version: '1.8.0_181'
Driver info: driver.version: unknown
#1  D:\OpenServer\domains\my-progect.ru\vendor\facebook\webdriver\lib\Exception\WebDriverException.php:154
#2  D:\OpenServer\domains\my-progect.ru\vendor\facebook\webdriver\lib\Remote\HttpCommandExecutor.php:326
#3  D:\OpenServer\domains\my-progect.ru\vendor\facebook\webdriver\lib\Remote\RemoteWebDriver.php:126
#4  Codeception\Subscriber\Module->before
#5  D:\OpenServer\domains\my-progect.ru\vendor\symfony\event-dispatcher\EventDispatcher.php:212
#6  D:\OpenServer\domains\my-progect.ru\vendor\symfony\event-dispatcher\EventDispatcher.php:44
а в cmd :

Код:
C:\Users\Maks>java -Dwebdriver.chrome.driver=D:\chromedriver -jar D:\selenium-server-standalone-3.14.0.jar -port 5555
17:18:09.323 INFO [GridLauncherV3.launch] - Selenium build info: version: '3.14.0', revision: 'aacccce0'
17:18:09.323 INFO [GridLauncherV3$1.launch] - Launching a standalone Selenium Server on port 5555
2018-08-30 17:18:09.390:INFO::main: Logging initialized @305ms to org.seleniumhq.jetty9.util.log.StdErrLog
17:18:09.603 INFO [SeleniumServer.boot] - Selenium Server is up and running on port 5555
17:18:16.563 INFO [ActiveSessionFactory.apply] - Capabilities are: {
  "browserName": "chrome"
}
17:18:16.564 INFO [ActiveSessionFactory.lambda$apply$11] - Matched factory org.openqa.selenium.remote.server.ServicedSession$Factory (provider: org.openqa.selenium.chrome.ChromeDriverService)
подскажите что не так делаю?
 
Последнее редактирование:

grigori

( ͡° ͜ʖ ͡°)
Команда форума
что не так делаю?
игнорируешь смысл сообщений об ошибке - все написано белым по черному
ехать к тебе настраивать твой компьютер на выполение программы никто не будет
 

ilya12345

Новичок
игнорируешь смысл сообщений об ошибке - все написано белым по черному
ехать к тебе настраивать твой компьютер на выполение программы никто не будет
Григорий спасибо за столь содержательный ответ. Всегда удивляли подобные ответы.
Обычно правда пишут - "Читайте документацию там все написано". Форум это последний способ решения проблемы.
Естественно я перед этим почитал документацию и все что смог найти в инете, бился над этим несколько дней. Пока отложил, подумал может кто-то сталкивался с подобным.
Зачем тогда нужны форумы)

Ладно, все равно спасибо за ваш труд. Смотрел несколько ваших роликов на ютуб и один раз вы все таки дали мне дельный совет на форуме
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
Илья, тут реально нечего подсказывать. У тебя ошибки настройки рабочего окружения, надо гуглить и читать доку, помочь невозможно.
Ты задал вопрос - и я не понимаю, почему прямой ответ тебе не подходит.
 

WMix

герр M:)ller
Партнер клуба
и нафига делать скриншоты с консоли? не проще ли текст скопировать?, от этого информативность не изменится!
может кто и погуглил бы за тебя, да перепечатывать нет желания
 

AmdY

Пью пиво
Команда форума
Там же по ссылке написано
To locate Chromedriver binary use -Dwebdriver.chrome.driver=./chromedriver option.
Это дополнительная опция, а не отдельная команда. Должно быть что-то вроде
java -jar selenium-server-standalone-3.xx.xxx.jar -Dwebdriver.chrome.driver=./chromedriver
 

ilya12345

Новичок
Там же по ссылке написано
To locate Chromedriver binary use -Dwebdriver.chrome.driver=./chromedriver option.
Это дополнительная опция, а не отдельная команда. Должно быть что-то вроде
java -jar selenium-server-standalone-3.xx.xxx.jar -Dwebdriver.chrome.driver=./chromedriver
ответ с cmd:
Код:
C:\WINDOWS\system32>java -jar D:\selenium-server-standalone-3.14.0.jar -Dwebdriver.chrome.driver=D:/chromedriver
Exception in thread "main" com.beust.jcommander.ParameterException: Was passed main parameter '-Dwebdriver.chrome.driver=D:/chromedriver' but no main parameter was defined in your arg class
        at com.beust.jcommander.JCommander.initMainParameterValue(JCommander.java:936)
        at com.beust.jcommander.JCommander.parseValues(JCommander.java:752)
        at com.beust.jcommander.JCommander.parse(JCommander.java:340)
        at com.beust.jcommander.JCommander.parse(JCommander.java:319)
        at org.openqa.grid.internal.cli.StandaloneCliOptions.parse(StandaloneCliOptions.java:28)
        at org.openqa.grid.selenium.GridLauncherV3$1.<init>(GridLauncherV3.java:256)
        at org.openqa.grid.selenium.GridLauncherV3.lambda$buildLaunchers$0(GridLauncherV3.java:255)
        at org.openqa.grid.selenium.GridLauncherV3.buildLauncher(GridLauncherV3.java:163)
        at org.openqa.grid.selenium.GridLauncherV3.launch(GridLauncherV3.java:97)
        at org.openqa.grid.selenium.GridLauncherV3.main(GridLauncherV3.java:81)
это привело по этой ссылке https://github.com/SeleniumHQ/selenium/issues/2566
Код:
@fayizkc перемещает все ваши параметры командной строки -D ... до того, как -jar, как я сказал ранее .... java -Dwebdriver .... = ... -Dwebdriver .... = ... -jar selenium- сервер ....
ответ тот же

Код:
 [Facebook\WebDriver\Exception\SessionNotCreatedException] Unable to create new service: ChromeDriverService
Build info: version: '3.14.0', revision: 'aacccce0', time: '2018-08-02T20:13:22.693Z'
System info: host: 'PROGRAMMER', ip: '167.182.34.65', os.name: 'Windows 10', os.arch: 'x86', os.version: '10.0', java.version: '1.8.0_181'
Driver info: driver.version: unknown
#1  D:\OpenServer\domains\my-progect.ru\vendor\facebook\webdriver\lib\Exception\WebDriverException.php:154
#2  D:\OpenServer\domains\my-progect.ru\vendor\facebook\webdriver\lib\Remote\HttpCommandExecutor.php:326
#3  D:\OpenServer\domains\my-progect.ru\vendor\facebook\webdriver\lib\Remote\RemoteWebDriver.php:126
#4  Codeception\Subscriber\Module->before
#5  D:\OpenServer\domains\my-progect.ru\vendor\symfony\event-dispatcher\EventDispatcher.php:212
#6  D:\OpenServer\domains\my-progect.ru\vendor\symfony\event-dispatcher\EventDispatcher.php:44
cmd:
Код:
C:\WINDOWS\system32> java -Dwebdriver.chrome.driver=D:/chromedriver -jar D:\selenium-server-standalone-3.14.0.jar -port 5555
11:03:04.016 INFO [GridLauncherV3.launch] - Selenium build info: version: '3.14.0', revision: 'aacccce0'
11:03:04.017 INFO [GridLauncherV3$1.launch] - Launching a standalone Selenium Server on port 5555
2018-08-31 11:03:04.078:INFO::main: Logging initialized @250ms to org.seleniumhq.jetty9.util.log.StdErrLog
11:03:04.266 INFO [SeleniumServer.boot] - Selenium Server is up and running on port 5555
11:03:34.719 INFO [ActiveSessionFactory.apply] - Capabilities are: {
  "browserName": "chrome"
}
11:03:34.720 INFO [ActiveSessionFactory.lambda$apply$11] - Matched factory org.openqa.selenium.remote.server.ServicedSession$Factory (provider: org.openqa.selenium.chrome.ChromeDriverService)
 

AmdY

Пью пиво
Команда форума
По твоей ссылке к тикету в окменте есть пример для винды, там прописан путь к exe файлу, а не папке
java -Dwebdriver.chrome.driver=D:/путь к драйверу/chromedriver.exe -jar D:\selenium-server-standalone-3.14.0.jar -port 5555
 

ilya12345

Новичок
По твоей ссылке к тикету в окменте есть пример для винды, там прописан путь к exe файлу, а не папке
java -Dwebdriver.chrome.driver=D:/путь к драйверу/chromedriver.exe -jar D:\selenium-server-standalone-3.14.0.jar -port 5555
Спасибо тебе огромное! Просто дописал D:/chromedriver.exe и заработало.
 
Сверху