Столкнулся с проблемой отсутствия информации, или не достаточно хорошо искал информацию по тестированию API, необходима ваша помощь.
Сразу оговорюсь, API раньше не тестировал, и некому подсказать.
Есть абстрактная задача написать авто тесты API “для понимания что что-то поломалось при изменениях”, конкретно ТЗ для тестирования нет.
Если не трудно, поделитесь вашим опытом тестирования API:
- Где лучше исполнять тесты:
- на отдельном сервере, где есть подготовленная база, и она всегда в каком-то первоначальном состоянии. Тесть там настроены данные и я всегда знаю по какому id получу какие данные.
- на общем staging, где данные всегда меняются - тогда тесты нужно разрабатывать универсальными, то есть в каждом тесте сначала создавать какую-то сущность а потом ее проверять.
- Какие тесты гоняются на проде, и надо ли? Фактически там данные меняются всегда, и там нельзя удалять, видоизменять и создавать данные.
- Что необходимо тестировать в границах разумного. Например, в CREATE проверять только наличие созданного вопроса или структуру созданного вопроса или проходится по каждому полю и проверять наполнение. Или например в GET запросах проверять параметр на Null, или на четкое совпадения из данными?
- Возможно есть у кого-то ссылки на полезный материал чтобы почитать или примеры на Git с хорошей структурой тестов.
Буду благодарен за помощь.