Я знаю, что после завершения теста было задано много вопросов об очистке данных. Многие из них заявили, что издеваются над базой данных, чтобы избежать использования реальной базы данных, а затем просто очистить ее, как только тест будет выполнен. Я не уверен, что это сработает с тем, что я делаю, вот и все.Очистка добавленных записей в базу данных после приемочных испытаний UI
Я использую SpecFlow для .net, используя Selenium для WebUI и NUnit для тестового бегуна.
Приложение само по себе представляет собой большое веб-приложение с мули-страницей.
Функции SpecFlow разделены функциями страницы, и большинство, если не все страницы, имеют таблицу, отображающую созданные записи. Ex. Я создаю новую категорию, и на странице отображается добавленная категория в таблице. Чтобы иметь возможность запускать эти тесты снова и снова, мне нужно удалить все добавленные записи, которые были созданы из базы данных, чтобы те же самые категории можно было воссоздать, когда тесты будут проходить повторно.
У нас есть скелетная установка для запуска после каждой функции, которая пройдет в хранимой процедуре для удаления добавленных записей из базы данных. Было много отбросов на эту идею из-за риска удаления записей для другого тестового клиента в тестовой среде.
Итак, мой вопрос в том, что является лучшей практикой для очистки базы данных?
К сожалению, Вы используете базу данных, которая разделяет жить клиентские данные производства с тестовыми данными? – AlSki
Хорошо, я сожалею, нет, все среды, прежде чем мы добираемся до производства, не имеют данных о производственных клиентах. Тем не менее, они хотят запустить эти тесты в prod, и в этом случае тестовый клиент будет делиться базой данных. Мы пока не находимся на таком уровне, чтобы еще не определиться. –