t.me/atinfo_chat Telegram группа по автоматизации тестирования

Загрузка fixture один раз для всего теста (Yii2)


(Denys Duvanov) #1

Здравствуйте,
У меня есть формы в которых есть валидации по существования записи в таблице.
Как загружать фикстуры для класса теста единожды?

То есть 1 раз заполнить таблицы и потом пройти все тесты в одном классе, после таблицы уже сами очистятся. Сейчас загрузка всех фикстур в методе _before и как следаствие грузятся при каждом тесте.

Попробовал уже и схитрить. Вызывать создание фикстур через метод и в нем проверять по переменной были они загружены или нет. Насколько я понял из того что переменная всегда возвращается к дефолтному значение клас каждый раз перегружается и это не сработает.

Как использовать фикстуры в статическом методе setUpBeforeClass я так и не понял. Пробовал создавать метод внутри для доступа к haveFixtures так возвращал ошибку Yii2: Module can't be accessed

$test = new Unit(); или $test = new self;
// Тут ошибка
$module = $test->getModule('Yii2');

Версии ОС и софта следующие …
Yii2, php 7.2

Насколько я понял из документации (https://codeception.com/docs/reference/Module.html), что бы получить доступ к методу загрузки класса мне нужно создать свой Helper отнаследованный от \Codeception\Module и тогда я получу доступ к методам _beforeSuite()?