Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Tehnologiq_progr-niq-lekcii_dopolnennye.doc
Скачиваний:
11
Добавлен:
07.09.2019
Размер:
529.92 Кб
Скачать

Аксиомы тестирования.

  1. Хорош тот тест, для которого высока вероятность обнаружить ошибку, а не тот, который демонстрирует правильную работу программы.

  2. Одна из самых сложных проблем при тестировании – решить, когда надо закончить.

  3. Невозможно тестировать свою собственную программу. Тестирование выполняет внешняя группа. Комплексное тестирование выполняется независимой группой.

  4. Необходимая часть любого теста – описание ожидаемых результатов.

  5. Избегать невоспроизводимых тестов.

  6. Необходимо готовить тесты как для правильных, так и для неправильных входных данных. Последние лучше обнаруживают ошибки.

  7. Надо детально изучать результаты каждого теста.

  8. По мере увеличения числа ошибок обнаруженных, растет и относительная вероятность существования в ней необнаруженных ошибок.

  9. Тестирование поручают самым способным программистам.

  10. Тестируемость – это ключевая задача программного обеспечения. Сложность тестирования программы зависит от её структуры и качества проектирования.

  11. Никогда не изменяйте программу, чтобы облегчить её тестирование, т.к. в этом случае программист будет тестировать другую программу.

Отладка.

Отладка – это локализация и устранение ошибок. Является следствием успешного тестирования. Процессу отладки предшествует выполнение некоторого теста, результат которого оценивается, регистрируются несоответствия между ожидаемым результатом и реальным. Возможны два исхода процесса отладки:

  1. Причина найдена, исправлена, уничтожена.

  2. Причина не найдена.

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

Способы проявления ошибок:

  1. Программа завершается нормально, но выдает неверный результат.

  2. Программа зависает.

  3. Программа завершается по прерыванию.

  4. Программа завершается, выдает ожидаемые результаты, но хранимые данные испорчены.

Симптомы ошибок:

  • постоянные;

  • мерцающие;

  • пороговые;

  • отложенные, проявляются после выявления маскирующих ошибок.

Две группы методов отладки:

  1. Аналитические – базируются на анализе выходных данных тестов.

  2. Экспериментальные – базируются на использовании вспомогательных средств отладки (трассировка процесса, вспомогательная печать), позволяющие уточнить характер поведения программы при тех или иных исходных данных.

Общая стратегия отладки:

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

Цель отладки:

  • найти оператор программы, при исполнении которого правильные аргументы приводят к неправильным результатам. Данное прослеживание организуется в зависимости от методов отладки.

В аналитических методах на основе логических заключений о поведении программы. Цель: шаг за шагом уменьшить область программы, подозреваемую в наличии ошибки.

Преимущество аналитических методов:

Исходная программа остается без изменений.

В экспериментальных методах для прослеживания выполняется:

  • выдача значений переменных в указанных точках;

  • трассировка переменных;

  • трассировка потоков управления (имен вызываемых процедур, меток на которые передается управление).

Преимущество экспериментальных методов:

– основная рутинная работа по анализу процесса вычислений перекладывается на компьютер.

Недостаток экспериментальных методов:

– в программу вносятся изменения, при исключении которых могут появиться ошибки.

Сопровождение программного обеспечения (СПО).

СПО – это такая работа, которая включает внесение необходимых изменений в программе и поддержание уже готового программного обеспечения в рабочем состоянии.

Затраты по стадиям жизненного цикла ПО.

Обнаружение ошибок по стадиям жизненного цикла ПО.

Затраты на устранение ошибок по стадиям.

Деятельность сопровождаемого программиста распадается на три этапа:

  1. Усовершенствование в процессе сопровождения (внесение изменений в ПО в соответствии с интересами заказчика = 60% всего времени сопровождения).

  2. Адаптация в процессе сопровождения. Приспособление программного обеспечения к изменившимся условиям работы системы (повысить точность) = 18%.

  3. Коррекция в процессе сопровождения (чистое исправление ошибок ПО) = 17% .

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