Методология 65
должно быть внесено новых ошибок, а в описатель дефекта должны быть
внесены соответствующие изменения.
Получение нужного кода Найдите все файлы, которые нужно изменить
для исправления дефекта
Создание нового кода Для исправления дефекта, возможно, придется
написать код в новых файлах
Изменение существую Для исправления дефекта может потребоваться
щих файлов изменение существующих файлов: добавление
или удаление кода
Операция: Создание или изменение теста модуля
С помощью теста модуля проверяется корректность реализации определен
ного программного компонента. Выполнение тестов модулей при разработ
ке уменьшает число дефектов, обнаруживаемых на этапе тестирования, и по
зволяет бороться с регрессом — появлением новых дефектов при исправле
нии уже выявленных или добавлении новых функций. Тесты модулей не явля
ются тестами функций или взаимодействия; их единственное назначение —
проверить автономную работу фрагмента кода. Разработчики должны убедить
ся в том, что существующие тесты модулей проходят после написания ново
го кода. Тестирование должно проводиться на протяжении всего проекта —
от реализации архитектурных основ в начале до внесения дополнений в кон
це проекта. Есть разные типы тестовых заданий, например для проверки сце
нариев и требований к качеству. При этом все разновидности тестов едино
образно выполняются и выявляют дефекты.
Определение типа теста Определите типы разрабатываемых тестов
модуля модулей. Тесты правильной работы (positive
unit tests) проверяют код в нормальном режи
ме и контролируют корректность результатов.
В тестах неправильной работы (negative unit
tests) умышленно некорректно используется
код и проверяется его устойчивость и адекват
ность обработки ошибок. Тесты с внесением
неисправностей позволяют обнаружить
аномалии в обработке ошибок
Создание или изменение Для каждой задачи по разработке определите
теста модуля необходимые тесты модулей, которыми можно
проверить как можно больше функций. Напи
шите тест модуля, убедитесь, что он не прохо
дит, напишите или выделите фрагмент кода
путем рефакторинга и прогоните тест модуля.
Повторите процедуру для всех выбранных
тестов модулей