Введение
Испытание для определения соответствия требованиям спецификации или контракта.
В инженерии и ее различных областях приемные испытания – это испытание, проводимое для определения соответствия требованиям спецификации или контракта. Они могут включать химические, физические или функциональные испытания. В системной инженерии это может быть тестирование «черного ящика», выполняемое над системой (например, над программным обеспечением, партиями изготовленных механических деталей или партиями химической продукции) перед ее поставкой. В тестировании программного обеспечения ISTQB определяет приемные испытания как: финальное испытание в цикле обеспечения качества, пользовательское приемочное тестирование, которое проводится непосредственно перед окончательным выпуском для оценки способности продукта или приложения обрабатывать реальные сценарии. Путем имитации поведения пользователя оно проверяет, удовлетворяет ли система бизнес-требованиям, и отклоняет изменения, если определенные критерии не выполняются. Некоторые формы приемных испытаний включают пользовательское приемочное тестирование (UAT), тестирование конечными пользователями, операционное приемочное тестирование (OAT), разработку, управляемую приемочными тестами (ATDD), и полевые (приемочные) испытания. Критерии приемки – это условия, которым система или компонент должны соответствовать, чтобы быть принятыми пользователем, заказчиком или другим уполномоченным лицом.
Обзор
Тестирование — это набор действий, выполняемых для выявления и/или оценки характеристик одного или нескольких тестируемых объектов. Каждый тест, известный как тест-кейс, включает в себя набор предопределенных тестовых действий, разработанных для приведения тестируемого объекта в соответствие с целями тестирования, включая корректную реализацию, обнаружение дефектов, проверку качества и другие важные аспекты. Критерии приемочного тестирования пользователями (UAT) (в гибкой разработке программного обеспечения) обычно создаются бизнес-заказчиками и формулируются на языке бизнес-области. Это высокоуровневые тесты для проверки полноты пользовательской истории или историй, реализованных в ходе любого спринта/итерации. Критерии операционного приемочного тестирования (OAT) (независимо от использования гибкой, итеративной или последовательной модели разработки) определяются на основе функциональных и нефункциональных требований, охватывающих ключевые атрибуты качества, такие как функциональная стабильность, переносимость и надежность.
Процесс
Комплекс приемочных испытаний может потребоваться выполнить несколько раз, поскольку не все тестовые случаи могут быть выполнены в рамках одной итерации испытаний. Комплекс приемочных испытаний проводится с использованием заранее определенных процедур приемочных испытаний, чтобы указать тестировщикам, какие данные использовать, последовательность шагов для выполнения и ожидаемый результат после выполнения. Фактические результаты сохраняются для сравнения с ожидаемыми результатами. Это не системное тестирование (обеспечение того, что программное обеспечение не аварийно завершает работу и соответствует задокументированным требованиям), а скорее проверка того, что решение будет работать для пользователя (то есть, что пользователь примет решение); поставщики программного обеспечения часто называют это "бета-тестированием". Данное тестирование должно проводиться предполагаемым конечным пользователем или экспертом в предметной области (SME), предпочтительно владельцем или клиентом тестируемого решения, и предоставлять сводку результатов для подтверждения возможности продолжения после испытаний или проверки. В разработке программного обеспечения UAT, как один из заключительных этапов проекта, часто происходит перед тем, как клиент или заказчик принимает новую систему. Пользователи системы выполняют тесты, соответствующие реальным сценариям использования. Материалы, предоставляемые тестировщику, должны быть аналогичны материалам, которые будут доступны конечному пользователю. Тестировщикам следует предоставить реальные сценарии, например, три наиболее распространенных или сложных задачи, которые будут выполнять пользователи, которых они представляют. UAT служит окончательной проверкой требуемой бизнес-функциональности и корректной работы системы, имитируя реальные условия от имени платящего клиента или конкретного крупного заказчика. Если программное обеспечение работает в соответствии с требованиями и без сбоев при нормальном использовании, можно обоснованно экстраполировать тот же уровень стабильности в производственной среде. Пользовательские тесты, обычно выполняемые клиентами или конечными пользователями, как правило, не фокусируются на выявлении простых косметических проблем, таких как опечатки, или критических дефектов, таких как сбои программного обеспечения; тестировщики и разработчики выявляют и устраняют эти проблемы на более ранних этапах модульного тестирования, интеграционного тестирования и системного тестирования. UAT следует проводить на основе тестовых сценариев. Тестовые сценарии обычно отличаются от системных или функциональных тестовых случаев тем, что они представляют собой путь "пользователя" или "клиента". Широкий охват тестового сценария обеспечивает фокусировку на пути, а не на технических или системных деталях, избегая пошаговых инструкций для тестирования, чтобы учесть вариативность поведения пользователей. Тестовые сценарии можно разбить на логические "дни", которые обычно соответствуют смене действующего лица (пользователя/клиента/оператора) или системы (бэк-офис, фронт-энд). В промышленности распространенным видом приемочных испытаний является заводское приемочное тестирование (FAT). Это тестирование проводится перед установкой оборудования. В большинстве случаев тестировщики проверяют не только соответствие оборудования спецификациям, но и его полную функциональность. FAT обычно включает проверку комплектности, верификацию соответствия договорным требованиям, подтверждение функциональности (либо путем моделирования, либо традиционным функциональным тестированием) и окончательную инспекцию. Результаты этих испытаний дают клиентам уверенность в том, как система будет работать в производственной среде. Также могут существовать юридические или договорные требования к приемке системы.
Испытания на приемку в эксплуатацию
Операционное приемочное тестирование (OAT) используется для проверки операционной готовности (предварительной подготовки к выпуску) продукта, услуги или системы в рамках системы управления качеством. OAT является распространенным типом нефункционального тестирования программного обеспечения, применяемым преимущественно в проектах разработки и сопровождения программного обеспечения. Этот вид тестирования фокусируется на готовности системы к эксплуатации и/или включению в производственную среду.
Тестирование приемлемости в экстремальном программировании
Приемочное тестирование — это термин, используемый в гибких методологиях разработки программного обеспечения, в частности в экстремальном программировании, обозначающий функциональное тестирование пользовательской истории командой разработки программного обеспечения в процессе реализации. Заказчик определяет сценарии для проверки корректности реализации пользовательской истории. Пользовательская история может иметь один или несколько приемочных тестов, в зависимости от того, что необходимо для подтверждения работоспособности функциональности. Приемочные тесты являются системными тестами «черного ящика». Каждый приемочный тест представляет собой ожидаемый результат работы системы. Заказчики отвечают за проверку корректности приемочных тестов и анализ результатов тестирования, чтобы определить приоритетность неудачных тестов. Приемочные тесты также используются в качестве регрессионных тестов перед выпуском в продуктивную среду. Пользовательская история считается завершенной только после успешного прохождения всех приемочных тестов. Это означает, что для каждой итерации необходимо создавать новые приемочные тесты, иначе команда разработки сообщит об отсутствии прогресса.
Критерии принятия
Согласно Институту управления проектами, критерии приемки – это "набор условий, которым необходимо соответствовать до того, как будут приняты результаты работы". Требования, указанные в критериях приемки для конкретного компонента системы, как правило, очень детализированы.