– содержит реальные данные и учётные записи пользователей;
– настроена на безопасность и конфиденциальность данных;
– требует высокой доступности и производительности по сравнению с тестовым окружением.
Перед тем как поместить сайт в промышленное окружение создатели помещают его в тестовое окружение, которое не доступно для конечных пользователей. В тестовом окружении проводят тестирование поискового сайта, чтобы убедиться, что сайт работает и его можно в дальнейшем поместить в промышленное окружение.
Основные характеристики тестового окружения:
– в нём разрабатывается и тестируется программа до выпуска в продуктивное окружение;
– используется для исправления дефектов и проверки функциональности до переноса в промышленное окружение;
– имитирует реальные условия работы, но может иметь меньшие мощности по сравнению с промышленным окружением;
– содержит не реальные данные, а тестовые.
Таким образом, тестовое окружение – для разработки и тестирования, продуктивное окружение – для реальной эксплуатации готовой программы. Основная работа специалистов по тестированию проводится на тестовом окружении.
В различных компаниях могут использоваться и другие окружения. Примеры названий: dev (дев), test (тест), qa (кью-эй), preprod (препрод), stage (стейдж), preview (превью) и т. д. То, какие окружения используются, зависит от специфики работы организации и разрабатываемых программ, поэтому мы не будем их рассматривать. Но вы должны знать, что кроме продуктивного и тестового окружения в ряде организаций существуют и другие окружения.
Тестовая документация и артефакты
В процессе работы специалисты по тестированию создают различные артефакты[11] и документы. Кстати, дефект – это один из артефактов работы тестировщика. Познакомимся поближе с документами и артефактами, которые могут создавать и с которыми могут работать специалисты по тестированию.
План тестирования
Тестирование, как и любой другой процесс, должно планироваться. Планирование тестирования – это одна из активностей, о которой мы поговорим в других главах книги. Планирование является непрерывной деятельностью, которая выполняется в течение всего жизненного цикла ПО, и в процессе планирования создаётся план тестирования (тест-план).
Это документ, который помогает организовать и планировать процесс тестирования на этапе разработки программного обеспечения, что позволяет провести тестирование эффективно и качественно.
В плане тестирования фиксируется следующая информация:
– Цели и задачи тестирования. Здесь определяется, что именно нужно проверить в программном обеспечении.
– Объекты тестирования[12]. Какие модули, функциональные возможности, интерфейсы и т. д. будут тестироваться.
– Уровни, типы и виды тестов. Например, функциональное тестирование, нефункциональное тестирование, тестирование производительности, и т. д.
– Приоритеты тестов. В какой последовательности будут выполняться тесты.
– Ответственные за тестирование. Кто конкретно будет разрабатывать, выполнять и отслеживать результаты тестов.
– График тестирования. План со сроками, в котором указано, когда и в какие сроки должно быть проведено и завершено тестирование.
– Тестовое окружение. Какое тестовое окружение будет использоваться в тестах.
– Риски. Что может увеличить сроки тестирования или блокировать тестирование и как эти риски нивелировать.
– Критерии успешности тестирования. Что считать успешным тестированием и какие условия должны выполняться.
В зависимости от организации в план тестирования могут включать и другую информацию, которую посчитают важной. С примером плана тестирования вы можете ознакомиться на сайте автора[13].
Разработку планов тестирования проводят опытные специалисты по тестированию или руководители и менеджеры по тестированию.
Функциональная карта
Функциональную карту ещё называют «интеллектуальной картой», «диаграммой связей», «ассоциативной картой» и т. д. Мы её называем «функциональной», так как на ней отражены функциональные области программы, которые необходимо тестировать.