Лекция №13Тестирование ПО

Тестирование — один из основных этапов разработки ПО, решающий две задачи:

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

В рамках классических моделей жизненного цикла тестирование следует за конструированием. В более современных подходах (например, в гибкой методологии разработки) тестирование происходит одновременно с конструированием; оно помогает уточнить и/или выявить требования к программной системе. Существует даже подход к разработке ПО, при котором тесты пишутся до (а не после) основного кода — test-driven development.

Выделяют три фазы тестирования ПО:

  1. тестирование при разработке, направленное, прежде всего, на устранение дефектов ПО;
  2. тестирование выпусков, предназначенное для проверки корректности всей системы в целом;
  3. пользовательское тестирование, целью которого является проверка работоспособности системы в окружении пользователя.

Различным фазам тестирования соответствуют различные методы и инструменты. Например, при разработке имеет смысл тестировать элементарные составляющие программной системы, такие как методы или функции при помощи модульного тестирования. Тестирование выпусков сосредоточено на проверке сценариев использования ПО и нефункциональных требований (например, производительности). Наконец, при помощи альфа-тестирования, бета-тестирования и других видов пользовательского тестирования делается вывод, соответствует ли программная система ожиданиям пользователей и готов ли заказчик оплатить ее стоимость.

Скачать презентацию