Этот вид теста может быть полезен для тестирования большого набора данных с относительно небольшими усилиями тестера, если между базой данных и дисплеем для конечного пользователя не так много логики разработчика. Наша команда делала это несколько раз, и особенно полезно для выполнения больших объемов реальных производственных данных через наши тесты, чтобы быть уверенным, что реальные сценарии обрабатываются так, как ожидалось. Удостоверьтесь, что вы выполнили хотя бы небольшое фиксированное тестирование ввода для редких сценариев, которые, скорее всего, будут обрабатываться по-разному в БД и на веб-странице - нулевые значения, специальные символы и другие странности.
Лично я бы назвал это «интеграционным тестированием», поскольку вы тестируете интеграцию БД и веб-сайта, а не «функциональное тестирование». Для «функционального тестирования» я, вероятно, хотел бы сделать макет источника данных (например, базы данных), который предоставит предварительно записанные наборы данных в формате, который вы ожидаете.
Сказав это, если бы у меня была высокая уверенность в достоверности данных БД и если логика между запросом БД и отображением веб-страницы была очень маленькой и низкой, я, вероятно, не стал бы беспокоиться об этом пусть интеграционный тест охватывает функциональность. Я не знаю, что тестирование функциональности и интеграции по отдельности было бы большим выигрышем в этом случае, и, вероятно, есть лучшие вещи, которые вы могли бы сделать с доступным временем тестирования. Если вокруг этих данных много логики, вам, вероятно, следует протестировать интеграцию отдельно от функциональности. Дополнительное интеграционное тестирование, вероятно, будет включать такие вещи, как «Что если база данных не может быть достигнута?» и «Что делать, если база данных работает медленно?».
Хотя этот метод будет работать с Ajax, убедитесь, что ваши инструменты тестирования будут работать с Ajax. В частности, подумайте, как вы будете собирать результаты запросов к базе данных и как вы будете собирать результаты, отображаемые на веб-странице.
Я предполагаю, что достоверность данных в запросе проверяется в другом месте, поскольку вы упомянули, что это был только один тип теста в плане тестирования. Я также просто обсуждаю интеграцию с базой данных и с этим отчетом , а не с другими функциями или компонентами, а также с другими аспектами тестирования (производительность, безопасность и т. Д.), Поскольку это было сфера вашего вопроса.