1 апреля 2011 г.

Тестирование ПО, классификация видов тестирования

Что же такое “тестирование”? В книге Мещерякова М.С. “Тестирование программного обеспечения” дано два определения этому термину:

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

Википедия же “знает” только второе определение, которое просто немного иначе сформулировано: “Тести́рование програ́ммного обеспе́чения — процесс исследования ПО с целью получения информации о качестве продукта”, ну, а мне всё таки ближе (наверное потому что оно проще) первое определение:)

Если верить всё той же Википедии, то различают следующие виды тестирования:


По объекту тестирования:
  • Функциональное тестирование (functional testing)
  • Тестирование производительности (performance testing)
    • Нагрузочное тестирование (load testing)
    • Стресс-тестирование (stress testing)
    • Тестирование стабильности (stability / endurance / soak testing)
  • Тестирование удобства использования (usability testing)
  • Тестирование интерфейса пользователя (UI testing)
  • Тестирование безопасности (security testing)
  • Тестирование локализации (localization testing)
  • Тестирование совместимости (compatibility testing)
По знанию системы:
  • Тестирование чёрного ящика (black box)
  • Тестирование белого ящика (white box)
  • Тестирование серого ящика (grey box)
По степени автоматизации:
  • Ручное тестирование (manual testing)
  • Автоматизированное тестирование (automated testing)
  • Полуавтоматизированное тестирование (semiautomated testing)
По степени изолированности компонентов:
  • Компонентное (модульное) тестирование (component/unit testing)
  • Интеграционное тестирование (integration testing)
  • Системное тестирование (system/end-to-end testing)
По времени проведения тестирования:
  • Альфа-тестирование (alpha testing)
  • Тестирование при приёмке (smoke testing)
  • Тестирование новой функциональности (new feature testing)
  • Регрессионное тестирование (regression testing)
  • Тестирование при сдаче (acceptance testing)
  • Бета-тестирование (beta testing)
По признаку позитивности сценариев:
По степени подготовленности к тестированию:
  • Тестирование по документации (formal testing)
  • Тестирование ad hoc или интуитивное тестирование (ad hoc testing)
Со временем я постараюсь более или менее подробно рассказать о каждом из видов тестирования:) Информация об определенном виде тестирования (выделено курсивом) доступна по ссылке (если навести курсор мышки на название вида тестирования).

3 комментария:

Webpioner комментирует...

Неплохо бы ссылки выделить цветом или подчеркиванием

Валентина Витковская комментирует...

to Webpioner: принято:) сделаю:) спасибо:)

Валентина Витковская комментирует...

выделила курсивом:)