подскажите, плиз, как сделать так, что-бы в некоторых тестах у меня проверка происходила на PhpBrowser’e а в некоторых в WevDriver’e
Ответ: сделать эти тесты в разных suite’ах
Например:
- acceptance -> WebDriver
- web -> PhpBrowser
В Codeception есть концептуальное ограничение: тесты с одной конфигурации принадлежат к одному сьюту. Как минимум всегда будет определенность как запускается тот или иной тест.
Я у себя решил эту проблему через окружение, каждому тесту через аннотации указал браузеры для которых он предназначен
Аннотация перед тестом:
* @env firefox
* @env chrome
* @env chromeheadless
* @env phpbrowser
В tests/acceptance.suite.yml :
env:
phpbrowser:
modules:
disabled:
- WebDriver
enabled:
- PhpBrowser
chrome:
modules:
config:
WebDriver:
browser: chrome
.....итд
Запуск:
./vendor/bin/codecept run --env chrome --env phpbrowser
Спасибо за ответ!
Подскажи пожалуйста, что я сделал не так?
Мой acceptance.suite.yml файл
actor: AcceptanceTester
env:
- \Helper\Functional
phpbrowser:
modules:
disabled:
- WebDriver
enabled:
- phpBrowser
chrome:
modules:
config:
WebDriver:
browser: chrome
url: http://logInTo@url/
host: XX.XXX.XX.XXX
port: 4444
browser: chrome
restart: true
window_size: 1440x1440
перед тестом указал:
/**
*@env phpBrowser
*/
запускаю так:
vendor/bin/codecept run --env phpbrowser
в консоли
По всей видимости перед тестом нужно указать “phpbrowser” а не “phpBrowser”
и так и так, результат одинаковый
вот так сейчас выглядит мой файлик
actor: AcceptanceTester
env:
- \Helper\Functional
phpbrowser:
modules:
disabled:
- WebDriver
enabled:
- phpBrowser
chrome:
modules:
config:
WebDriver:
browser: chrome
url: http://url/
host: host
port: 4444
browser: chrome
restart: true
window_size: 1440x1440
phpBrowser:
modules:
config:
phpBrowser:
url: http://url/
auth: ['login', 'passswod']
может тут что-то не так?
а можешь плиз показать свой yml файл? Я постараюсь сделать по аналогии
буду очень благодарен.
Мой файлик как то так организован:
actor: AcceptanceTester
modules:
enabled:
- \Helper\Acceptance
- WebDriver
env:
phpbrowser:
modules:
disabled:
- WebDriver
enabled:
- PhpBrowser
config:
PhpBrowser:
url: http://url/
auth: ['login', 'passswod']
chrome:
modules:
config:
WebDriver:
browser: chrome
url: http://url/
host: host
port: 4444
browser: chrome
restart: true
window_size: 1440x1440
/**
* @env phpbrowser
*/
vendor/bin/codecept run --env phpbrowser
Спасибо большое!!! всё взлетело так как надо