Как разделить прогон тестов в PhpBrowser и WebDriver

подскажите, плиз, как сделать так, что-бы в некоторых тестах у меня проверка происходила на PhpBrowser’e а в некоторых в WevDriver’e

Ответ: сделать эти тесты в разных suite’ах

Например:

  • acceptance -> WebDriver
  • web -> PhpBrowser

В Codeception есть концептуальное ограничение: тесты с одной конфигурации принадлежат к одному сьюту. Как минимум всегда будет определенность как запускается тот или иной тест.

1 лайк

Я у себя решил эту проблему через окружение, каждому тесту через аннотации указал браузеры для которых он предназначен

Аннотация перед тестом:

* @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

2 лайка

Спасибо за ответ!
Подскажи пожалуйста, что я сделал не так?

Мой 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” :slight_smile:

1 лайк

и так и так, результат одинаковый :pensive:

вот так сейчас выглядит мой файлик

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 файл? Я постараюсь сделать по аналогии
буду очень благодарен. :blush:

Мой файлик как то так организован:

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

1 лайк

Спасибо большое!!! всё взлетело так как надо :slightly_smiling_face: :tada: