всем привет! вопрос по апи тестам. Пример: тест на изменение данных пользователя: делаю post запрос с json'ом, данные изменились, ок. Затем хорошо бы вернуть все как было до выполнения теста, снова отправляю post но с прежними данными. Стоит ли вынести отправку запроса с данными в отдельную функцию? Получится что в тесте вызывается функция, происходит проверка, и снова вызывается функция. Пишу на js + chai mocha.
В идеале, лучше не возвращать всё как было, а перед тестом накатывать в базу записи для теста (лучше сразу для всего сьюта один раз) - это позволит проще определить после теста, что пошло не так. Делать это, конечно же стоит не через апи, которое тестируется, а через какую-нибудь утилиту для работы с базой - и быстрее, и надёжнее в случае если апи дефектное.
Функции, которые сетапят энв и делают шаги после выполнения тестов должны быть не в самом тесте, а в каких-нибудь setup() и tearDown() методах.
Правильно выше советовали почитать про то, как пишутся тесты с ипользованием xUnit библиотек.