Написание тестов для API, результаты которых зависят от таблицы с миллионами строк

Написание тестов для API, результаты которых зависят от таблицы с миллионами строк
Написание тестов для API, результаты которых зависят от таблицы с миллионами строк - nci @ Unsplash

При производстве тестовых данных для модульных тестов вы хотите убедиться, что крайние случаи (иногда называемые крайними случаями) верны. Пограничный случай включает данные, которые должны генерировать ошибку. Вы захотите включить данные, которые относятся к каждому пограничному случаю, о котором вы знаете.

Вы действительно хотите убедиться, что тест может правильно отличить пройденный случай от непроходного случая. Вы можете включить ожидаемый результат как один из элементов данных, которые вы передаете в свой параметризованный тест, или вы можете иметь отдельные тесты для хороших и плохих данных. Оба подхода работают хорошо, и ваш выбор зависит от схожести структуры тестов.

В общем, вы хотите, чтобы ваши данные имели следующие атрибуты:

  • Данные должны быть репрезентативными. Другими словами, вам не нужно более одной записи для каждого типа сбоя.
  • Данные должны быть реалистичными. т.е. это должно выглядеть как действительные данные, но на самом деле не использовать реальные данные. Это больше для правовой защиты, особенно если это данные, которые можно считать частными, например адреса людей.
  • Данные должны быть минимальными. Короче говоря, вам нужно достаточно случаев, чтобы выявить проблемы, с которыми вы столкнулись.

После того, как вы проверили эти случаи на подмножестве тщательно отобранных данных, которые у вас есть для модульного теста, вы должны быть уверены, что код будет работать. Однако, если вы столкнетесь с реальной записью, в которой ваш код ведет себя не так, как ожидалось, вы захотите добавить это в тестовые данные. Убедитесь, что вы понимаете, в чем проблема. Например, вы можете неправильно обрабатывать специальные символы, такие как встроенные кавычки или международные символы. Это дополнительные крайние случаи, которые вам нужно проверить.

Прикрепляю к посту несколько видео по теме:

Прикрепленное видео 1 - Postman для тестировщика, Тестирование API, Полный курс 2022

Прикрепленное видео 2 - Как получить текст объявления через API VK

Прикрепленное видео 3 - Решаем тестовое задание на позицию тестировщика (Junior QA), Ответы на вопросы тестировщику


LetsCodeIt, 1 января 2023 г., 22:56