Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Rules_of_testing_full.doc
Скачиваний:
7
Добавлен:
04.11.2018
Размер:
198.66 Кб
Скачать

Высшая Школа Программирования

Правила тестирования программ

Правила тестирования программ

Submitted By:

Вадим Васильев

Submitted To:

Date:

The main purpose of this document is to specify all aspects of testing.

This document contains sections that may not apply to every product. Please disregard any sections that are not applicable. Some sections, which are not contained in this document, may be added to the real document depending on specific testing procedure.

Терминология

В настоящее время существуют следующие методологии тестирования:

  • регрессионное;

  • стохастическое;

  • восходящее;

  • нисходящее;

  • «черного ящика»;

  • «белого ящика»;

  • модульное (unit-testing) – тестирование обособленного модуля;

  • интеграционное (system-testing) – тестирование совместной работы модулей;

Сущность регрессионного тестирования заключается в том, что разработанные тесты многократно и полностью используются по ходу проекта с их обновлением и накоплением. Таким образом, регрессионное тестирование чаще всего носит инкрементальный характер. Главная задача регрессионного тестирования заключается в отслеживании того, чтобы однажды выявленная и исправленная ошибка не повторилась в дальнейшем. Регрессионное тестирование – основная работа тестера. При правильно и полностью проведенном регрессионном тестировании возможно:

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

  • давать на каждом этапе тестирования анализ состояния качества продукта,

  • отслеживать появление “повторяющихся” (repeated) ошибок.

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

Сущность восходящего тестирования (bottom-up) заключается в том, что сначала тестируются отдельные модули, а затем тестируется программы в целом.

Сущность нисходящего тестирования заключается в том, что сначала тестируется «целое», а затем тестируются отдельные модули.

Соответственно с этими терминами связано: модульное тестирование (unit-testing) – тестирование обособленного модуля без учета связей между модулями; интеграционное (system-testing) – тестирование совместной работы модулей с учетом связей между модулями. В том случае, если при интеграционном тестировании некоторых работоспособных модулей не хватает, то создаются программные заглушки (stub), которые имитируют работу модуля, но выдают неизменный отклик на запросы других модулей. Заглушка имитирует корректную работу модуля и со временем замещается на модуль. Иногда также для модульного тестирования используется термин «компонентное» тестирование («тестирование компонентов») - чаще всего для поиска ошибки, вносимых встраиваемыми готовыми компонентами третьих фирм (на основе ActiveX, COM, DCOM, JavaBeans).

Сущность тестирования программы по методу «черного ящика» заключается в том, что программа рассматривается как объект с неизвестной внутренней структурой, при тестировании фиксируются только отклики на внешние тестовые воздействия.

Сущность тестирования программы по методу «белого ящика» заключается в том, что программа рассматривается как объект с известной внутренней структурой, при тестировании фиксируются отклики на внешние тестовые воздействия и анализируется их взаимосвязь с внутренней структурой тестируемой программы. Иногда вместо термина «белый ящик» используют термин «стеклянный (glass) ящик» и «структурное тестирование».

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]