У нас довольно большой веб-сайт, у нас есть несколько важных устаревших кодов, которые мы хотим хорошо охватить.
В то же время мы хотели бы получить отчет о функциях, которые мы в настоящее время поддерживаем, ипокрыты.И также мы хотим быть уверены, что мы действительно покрываем каждый возможный угловой случай.Некоторые пути кода являются критическими и потребуют еще много тестов даже после достижения 100% покрытия.
Поскольку мы уже используем rspec, а rspec имеет ключевые слова «feature» и «script», мы попытались создать список, используя rspecвместо того, чтобы идти за огурцом, но я думаю, что этот вопрос может быть применен к любому инструменту тестирования.
Мы хотим что-то вроде этого:
feature "each advertisement will be shown a specified % of impressions"
scenario "As ..."
Эта функция минимальна с точки зрения менеджеров, но огромна в коде.Он включает в себя инструмент бэкэнда, периодическое задание, логику в моделях и представления в бэкэнде и внешнем интерфейсе.Мы попытались разделить его следующим образом:
feature "each creative will be shown a specified % of impressions"
context "configuration"
context "display"
scenario "..."
context "models"
it "should ..."
context "frontend"
context "display"
scenario "..."
context "models"
it "should ..."
Конфигурация выполняется в другом инструменте, дисплей будет содержать интеграционные тесты, а модели будут содержать модульные тесты.
Я повторяюсь, но идея заключается в том, чтобы убедиться, что функция действительно завершена (включая создание инструмента конфигурации) и протестирована на 100%.
Но, глядя на этот файл, это не интеграция и не модульное тестирование даже не относится к какому-либо конкретному проекту.Определенно должен быть лучший способ справиться с этим.
Каким-либо опытом, ресурсами, идеями, которыми вы можете поделиться, чтобы направлять нас?