ТИПЫ ТЕСТИРОВАНИЯ
Типтестирования—высокоуровневая классификация, определяемаязнаниемвнутреннего устройствасистемыиобщимицелями.
Видтестирования—болееузкаякатегория, сфокусированнаянаконкретнойцелиилифункции.
КЛАССИФИКАЦИЯ ОСНОВАНА НА ЗНАНИИ ВНУТРЕННЕГО УСТРОЙСТВА СИСТЕМЫ
|
Black Box |
White Box |
Grey Box |
|
Незнаемвнутреннее устройство |
Знаемвседетали реализации |
Частично знаемвнутреннее устройство |
|
Тестированиес позиции |
Тестированиес позиции |
Комбинациядвух подходов |
|
пользователя |
разработчика |
|
BLACK BOX TESTING (ЧЕРНЫЙ ЯЩИК)
• Суть: Внутренняяструктура Относящиесявиды системынеизвестна. Тестируемчерез тестирования:
внешниеинтерфейсы. • Функциональное
• Основнойвопрос: «Что» делает тестирование
система? • Приемочноетестирование
• Основа: Требования, спецификации, • Интеграционное
тестирование (науровне
поведение. систем)
• Цели: • Тестированиеудобства
1. Проверитьсоответствие использования (Usability) функциональноститребованиям. • Тестированиебезопасности (с
2. Найтиошибкивинтерфейсе, данных, внешнейточкизрения) поведениисистемы.
WHITE BOX TESTING (БЕЛЫЙ ЯЩИК)
|
• Суть: Внутренняяструктураикод системыполностьюизвестны. • Основнойвопрос: «Как» системаэтоделает? • Основа: Анализисходногокода, алгоритмов, путейвыполнения. • Цели: 1. Проверитьвнутренниелогическиепути, циклыиусловия. 2. Обеспечитьвысокоепокрытиекода. 3. Оптимизироватьпроизводительностьна уровнемодулей. |
Относящиесявиды тестирования: • Модульное (Unit) тестирование • Статическое тестирование (анализкода) • Тестированиепокрытия кода (Code Coverage) • Мутационноетестирование |
GREY BOX TESTING (СЕРЫЙ ЯЩИК)
• Суть: Частичноезнаниевнутренней Относящиесявиды структуры (архитектура, диаграммы, логика). тестирования:
• Подход: Выполнениетестов навнешнем
• Интеграционное
интерфейсесучетомвнутреннего
устройства. тестирование
• Цели: • Тестирование
1. Объединитьпреимущества Black Box и White производительности
Box. • Тестированиебезопасности
2. Создатьболеецеленаправленныеисложные
• Тестирование API тестовыесценарии.
3.Проверитьвзаимодействиемеждумодулями. • Тестированиебазданных
• Позапускукода:
• Статическоетестирование: Кодневыполняется (анализтребований, код-ревью, инспекции).
• Динамическоетестирование: Кодвыполняется (функциональные, нагрузочныетесты).
• Поисполнению:
• Ручноетестирование: Тестывыполняютсятестировщикомвручную.
• Автоматизированноетестирование: Тестывыполняютсяспомощью скриптовиинструментов.
• Проверяют, ЧТОделаетсистема.
• Основныевиды:
• Функциональноетестирование: Проверкасоответствия функциональнымтребованиям.
• Тестированиебезопасности (Security Testing): Проверка конфиденциальности, целостностиидоступностиданных.
• Тестированиевзаимодействия (Interoperability Testing): Проверка совместимостисдругимисистемами.
• Проверяют, КАКсистемаработает.
• Основныевиды:
• Тестированиепроизводительности (Performance Testing):
• Нагрузочное (Load): Поведениеподнагрузкой.
• Стрессовое (Stress): Поведениенапределеизапределамивозможностей.
• Объемное (Volume): Работасбольшимиобъемамиданных.
• Тестированиеудобстваиспользования (Usability
Testing): Насколькосистемапонятнаиудобнадляпользователя.
• Тестированиеустановки (Installation Testing): Корректность инсталляции, обновленияиудаления.
• Проводятсяпослевнесенияизмененийвкод.
• Основныевиды:
• Дымовоетестирование (Smoke Testing): Поверхностнаяпроверка основнойфункциональностипослесборки. "Заводитсялисистема?"
• Регрессионноетестирование (Regression Testing): Проверка, чтоновые изменениянесломалисуществующуюфункциональность.
• Санитарноетестирование (Sanity Testing): Узкаяиглубокаяпроверка конкретногоисправленияилифункциипослеизменений.
• Модульное (Unit) / Компонентное: Тестированиеотдельных функций, методов, классов. (Уровеньразработчика).
• Интеграционное (Integration): Тестированиевзаимодействия междумодулямиилисистемами.
• Системное (System): Тестированиесистемывсборена соответствиетребованиям.
• Приемочное (Acceptance): Финальноетестированиесучастием заказчикадляпринятиярешенияовыпуске.

•
Тестирование—этонепросто
"найтибаг".
Этосложный, многоуровневыйпроцесссразнымицелямииподходами.
• 
Правильныйвыбортипа, видаиуровнятестирования
напрямуювлияетнакачествоиэффективностьпроцесса разработкиПО.
• Нареальномпроекте используютсякомбинацииразличныхтиповивидов тестирования.
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.