Подробное описание проблемы и способ ее воспроизведения

Проблема

Ошибки

Документирование и анализ ошибок

Этапы и стратегии тестирования

Автономное тестирование модулей выполняется по мере их готовности.

Комплексное, или интеграционное тестирование допускает три стратегии:

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

§ Нисходящее тестирование, наоборот, начинается с интеграции модулей верхнего уровня. Оно не требует специальных отладочных программ, но заглушки нужны.

Обычно стратегия тестирования согласована со стратегией разработки.

§ Целостное тестирование – «разовый штурм»: до полной интеграции системы ее модули не проходят особо тщательного тестирования. Это наиболее экономная стратегия (не нужны заглушки и оболочки), но в целом наименее эффективная. Вопрос 5.

Вариант структуры отчета об ошибке (Вug report), рекомендуемой в [2]:

<А. Пункты, заполняемые сотрудником, обнаружившим ошибку >

Программа (с указанием версии и даты выпуска)

Тип отчета (1- 6)

1. Ошибка кодирования

2. Ошибка проектирования

3. Предложение

4. Расхождение с документацией

5. Взаимодействие с аппаратурой

6. Вопрос

Степень важности (1-3)

1. Фатальная

2. Серьезная

3. Незначительная

Приложения (да/нет)

Распечатки результатов, копии экрана, тестовые программы или данные.

Краткое описание сути проблемы

Воспроизводимость (да, нет, не всегда)

Описание входных данных и действий, приводящих к ошибке. Если ошибка не воспроизводится, описание попыток воспроизвести ее снова.

Предлагаемое исправление (необязательный пункт)

Сотрудник (фамилия)

Дата обнаружения

(Отчет об ошибке следует составлять немедленно при ее обнаружении.)

< Б. Пункты, предназначенные в основном для разработчиков >

Функциональная область Категория ошибки с точки зрения разработчиков

Поручено Ответственный за исправление (заполняется руководителем проекта)

Комментарии Поле для обсуждения сотрудниками

Состояние ( 1-2)

1. Открыто (начальное состояние при написании отчета)

2. Закрыто (устанавливается тестером, подтверждающим исправление)

Приоритет (1-6) заполняется руководителем проекта

1. Исправить немедленно – ошибка задерживает работу остальных

2. Исправить как можно быстрее

3. Исправить в текущей версии

4. Исправить до выхода окончательной версии

5. Исправить, если возможно

6. Не обязательно исправлять

Резолюция (1-6)

1. Рассматривается (устанавливается руководителем проекта)

2. Исправлено (устанавливается программистом)

3. Не воспроизводится (устанавливается программистом)

4. Отложено (устанавливается руководителем проекта)

5. Соответствует проекту (устанавливается программистом или руководителем проекта)

6. Нужна дополнительная информация (у программиста есть вопросы к тестеру)

Исправленная версия № и дата версии

Рассмотрено/дата Сотрудник, решивший проблему

(он устанавливает резолюцию «Исправлено»)

Проконтролировано/дата Тестер, согласный с резолюцией

(он устанавливает состояние «Закрыто»)

Исходное состояние отчета – «Открыто». В состояние «Закрыто» его переводит тестер, проверивший исправление или согласившийся с резолюцией «Соответствует проекту». На рис. 10-4 приведена диаграмма состояний и переходов пункта «Резолюция», где у каждого перехода указано, кто его инициирует. Вопрос 6.

 
 


Рук. проекта Рук. проекта

           
     


  Исходное
Программист

Рук. проекта

 
 


Тестер

                       
   
  Отложено
 
   
  Исправле- но
   
 
   
 
 
  Соответст- вует проекту
   
Не воспро- изводится или Есть вопросы
 


  Рассматри- вается
Программист

       
   


Тестер Руков. Тестер Программист

проекта

       
   


Рис. 10-4. Диаграмма состояний и переходов пункта «Резолюция» отчета об ошибке

В безбумажной системе отчеты накапливаются в базе данных коллективного доступа (существуют специальные системы управления ими, напр., Bugzilla). Вопрос 7. Такая база данных является ядром системы отслеживания проблем и управления качеством продуктов.

Вопросы и задания

1. Перечислите другие ошибки этого типа, обнаруживаемые аппаратурой процессора Intel-архитектуры.

2. Какой компилятор более строгий (выявляет большее количество синтаксических ошибок): MS VC++ или GNU C++?

3. Что называется путем в графе?

4. Задание: составить план тестирования и минимальный набор тестов (в форме таблицы 1) для программы, считывающей две даты D1 и D2 (от 0 до 2100 г.) и вычисляющей, сколько дней их разделяет.

5. Почему?

6. В отчете 5 типа (взаимодействие с аппаратурой): что должно быть указано в пункте “Подробное описание проблемы”?

7. По каким полям/состояниям отчета должны искать отчеты в базе данных тестеры, а по каким – программисты? По каким полям ищет отчеты руководитель проекта? Руководители более высокого уровня?


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: