Недавно начал вникать в тестирование, использую Codeception. Не понятно как правильно использовать БД.
Есть такой функционал - админ, добавляет запись, пользователи под ней оставляют комменты. Чтобы оставить комментарий надо знать id записи.
В Unit тестах, я перед каждым тестом создавал в бд запись (через модули обращался к ZF2, далее к мапперу бд). И точно знал номер.
Если я при приемочном тесте подключаю модуль ZF2, то появляется ошибка
Fatal error: Cannot redeclare _generated\AcceptanceTesterActions::switchToIframe()
Конфиг acceptance.suite.yml
class_name: AcceptanceTester
modules:
enabled:
- WebDriver
- \Helper\Acceptance
- Db
- ZF2
config:
WebDriver:
url: 'http://test.ru/'
browser: chrome
port: 4444
Просто грохнуть эту строчку не получается, так как при каждом запуске теста она добавляется, похоже автогенерация.
В настройках можно указать дамп бд, но это не как-то не гибко... Так как, у записи может быть несколько параметров, например, как дата и каким группам пользователей можно добавлять комментарии. И опять же сложность в получении номера записи.