YiiFramework Как подключить фикстуры при функциональном тестировании

ilya12345

Новичок
Можно ли при функциональном тестировании переключаться на тестовую базу данных и перед запуском тестов подключать фикстуры?

сейчас получается я работаю с рабочей базой данных и естественно информация в бд будет обновляться, тесты не будут проходить


файл functional.suite.yml
Код:
suite_namespace: frontend\tests\functional
actor: FunctionalTester
modules:
    enabled:
        - PhpBrowser:
            url: 'http://mysite.ru/'
                               
        - REST:
                       depends: PhpBrowser
                       url: 'http://mysite.ru/'
 

A1x

Новичок
Можно ли при функциональном тестировании переключаться на тестовую базу данных и перед запуском тестов подключать фикстуры?
не можно а нужно, как ты сам пишешь с рабочей базой тесты естественно работать не будут
 

ilya12345

Новичок
не можно а нужно, как ты сам пишешь с рабочей базой тесты естественно работать не будут
Буду очень благодарен если подскажешь как это(подключить тестовую бд и подготовленные фикстуры перед запуском функцианальных тестов) осуществить
 

A1x

Новичок
не скажу точно как в Yii, я работаю с Симфони, там по умолчаню используется PHPUnit, для тестов используется отдельный конфиг со всеми параметрами, в т.ч. базы данных,
в пхпЮните перед каждым тестом выполняется метод setUp в котором и загружаются фикстуры в базу - заново создаются все таблицы и в них пишутся тестовые данные перед каждым тестом. Иногда для отдельных тестов загружаю какие-то специфические фикстуры уже в самом методе теста. Есть разные тулзы для облегчения создания фикстур но я использую обычные .sql файлы, хотя может это и не лучший вариант
 

ilya12345

Новичок
не скажу точно как в Yii, я работаю с Симфони, там по умолчаню используется PHPUnit, для тестов используется отдельный конфиг со всеми параметрами, в т.ч. базы данных,
в пхпЮните перед каждым тестом выполняется метод setUp в котором и загружаются фикстуры в базу - заново создаются все таблицы и в них пишутся тестовые данные перед каждым тестом. Иногда для отдельных тестов загружаю какие-то специфические фикстуры уже в самом методе теста. Есть разные тулзы для облегчения создания фикстур но я использую обычные .sql файлы, хотя может это и не лучший вариант
Спасибо и на этом. С unit тестированием как раз все понятно, через документацию разобрался. А мне нужно именно функциональным (или приемочными тестами) проверить свое Rest Api. Грубо говоря проверить если я посылаю на свой сервер json для получения данных из бд, то хочу проверить тестами json на выходе.
И было бы хорошо если при тестировании можно было переключиться на тестовую бд
 

A1x

Новичок
Я именно и писал о функциональном тестировании, несмотря на название PHPUnit используется и для функциональных тестов тоже. Тоже тестирую так Rest Api
 

ilya12345

Новичок
Я именно и писал о функциональном тестировании, несмотря на название PHPUnit используется и для функциональных тестов тоже. Тоже тестирую так Rest Api
Отлично. Спасибо. Буду копать в эту сторону дальше)
 
Сверху