Методы и средства инженерии программного обеспечения



         

Тестирование ПО (Software Testing)


Тестирование ПО – это процесс  проверки работы программы  в динамике, основанный на выполнении  конечного набора тестовых данных и  сравнения полученных результатов с запланированными вначале.

Область знаний «Тестирование ПО (Software Testing)» включает  следующие разделы:

– основные концепции и определение тестирования  (Testing Basic Concepts and definitions),

– уровни тестирования (Test Levels),

– техники тестирования  (Test Techniques),

–  метрики тестирования (Test Related Measures),

– управление процессом тестирования  (Managing the Test Process).

 

Основная  концепция тестирования базируется на терминологии, теории и инструментах   подготовки и проведения процесса тестирования ПО, а также   оценке данных статистического анализа процесса тестирования. При тестировании выявляются  недостатки: отказы (faults) и  дефекты (defects), как причины нарушения работы системы, сбои (failures), как нежелательные ситуации, ошибки (errors), как последствия сбоев и др. Базовым понятием тестирования является тест, который выполняется в заданных условиях и на  наборах данных.  Тестирование считается успешным, если найден дефект или ошибка, и они устраняются. Степень тестируемости зависит от задания критериев покрытия системы тестами и вероятности появления сбоев. Данные базовые понятия  зависят от уровня, видов и техник тестирования ПО.

 

Уровни тестирования это:

 –  тестирование отдельных элементов, которое заключается  в  проверке  отдельных,  изолированных и независимых  частей ПО;

 – интеграционное тестирование, которое  ориентировано на проверку связей и способов взаимодействия (интерфейсов)  компонентов друг с другом, включая компоненты,  расположенные на  разных архитектурных платформах  распределенной среды;

 – тестирование системы  предназначено для проверки правильности функционирования системы в целом,  с обнаружением отказов и дефектов в системе и их устранение. При этом контролируется выполнение сформулированных нефункциональных требований (безопасность, надежность и др.) в системе, правильность задания и выполнения  внешних интерфейсов системы со средой окружения и др.




Содержание  Назад  Вперед