Вопрос: Как правильно: создавать тестовые данные ли в рамках сценария, которому они нужны или же использовать заранее подготовленную базу? Почему одинэсники чаще говорят об "эталонных" базах или даже тестировании на копии прод-базы? В 1С не принято создавать тестовые данные в сценарии?
В идеале все сценарии сами должны заботиться о подготовке всего необходимого для их выполнения окружения, включая подготовку нужных данных. Это обеспечит их независимость от других сценариев, от наличия данных, повысит стабильность.
Но на практике это не всегда возможно или эффективно (например, с точки зрения трудозатрат), потому в реальных проектах чаще используются комбинированные подходы, в которых простые сценарии готовят для себя данные сами, для более сложных сценариев данные хранятся во внешних файлах. Для сложных интеграционных тестов как данные могут храниться и использоваться целые выгрузки информационных баз или даже дампы баз данных.
Главная цель тестирования — не пропустить ошибки в релиз, убедиться, что ничего не сломали, проверить, что функционал работает.
У этого есть цена, на которую влияет в том числе выбор того, как организовать работу с тестовыми данными. И если дешевле (быстрее, проще с точки зрения обновления в будущем и т.п.) данные готовить в сценарии — то делают так, если проще иметь предзаполненную (эталонную) базу, то используют предзаполненную базу.
Чаще всего на реальных, живых проектах можно увидеть и и то и другое, в зависимости от тест кейса.
Это была (почти) еженедельная рубрика #ВопросОтвет. Присылайте свои вопросы на тему тестирования в комментариях к постам или в личные сообщения и я постараюсь на них ответить.
🦋 @QA_1C