• Тесты на Codeception для PHP-бэкендов
    0
    Локально и на bamboo у нас одна схема работы с БД:
    1. Поднимаем контейнер с БД.
    2. Раскатываем структуру и справочники миграциями. База раскатана и больше не перекатывается.
    3. Перед каждым тестом чистим таблички и заполняем нужными данными с помощью DoctrineFixturesBundle. Каждый тест получается атомарным, друг на друга никак не влияют.
  • Тесты на Codeception для PHP-бэкендов
    0
    Мы его не используем, в нем не очень удобно персистить в базу связанные объекты, особенно если их много. И опять же все свойства для объектов нужно передавать через массив.
    В случае DoctrineFixturesBundle получается более читабельный код.
  • Тесты на Codeception для PHP-бэкендов
    0
    Поскольку это высокоуровневые тесты, то мы проверяем логику работы с RabbitMQ/Kafka в рамках конкретных бизнес-процессов.
    Как правило, это два сценария — на чтение и запись:
    1. Положить валидное сообщение в очередь/топик, прочитать его. Или положить невалидное сообщение (без какого-то обязательного поля, просто мусор и т.д.), проверить как его обработает приложение.
    2. Выполнить операцию внутри приложения, которая что-то пишет в очереди/топики, и проверить, что все сгененерировались корректно.