Я новичок в мире тестирования и хочу убедиться, что я на правильном пути.
Я пытаюсь настроить модульные тесты в проекте symfony2, используя phpunit.
PHPUnitработает, и простые тесты контроллера по умолчанию работают нормально. (Тем не менее, речь идет не о функциональном тестировании, а о модульном тестировании моего приложения.)
Мой проект в значительной степени зависит от взаимодействия с базой данных, и, насколько я понимаю из документации phpunit, я должен настроить класс на основе на \PHPUnit_Extensions_Database_TestCase
, затем создайте фикстуры для моей базы данных и работайте оттуда.
Тем не менее, symfony2предлагает только класс WebTestCase
, который из коробки расширяется только от \PHPUnit_Framework_TestCase
.
Итак, я прав, предполагая, что должен создать свой собственный DataBaseTestCase
, который в основном копирует WebTestCase
, с той лишь разницей, что он наследуется от \PHPUnit_Extensions_Database_TestCase
и реализует все его абстрактные методы?
Или есть другой "встроенный" рекомендуемый рабочий процесс для symfony2относительно тестов, ориентированных на базу данных?
Поскольку я хочу убедиться, что мои модели хранят и извлекают правильные данные, я не хочу в конечном итоге случайно проверить особенности доктрины.