Отладка и тестирование программ
Автор презентации:
Учитель информатики
МКОУ «СОШ №2 ст. Преградная»
Хачко Ирина Александровна
Основные этапы процесса разработки программы
Как проконтролировать текст программы до выхода на компьютер?
Просмотр Проверка Прокрутка
Для чего нужны отладка и тестирование?
Отладка программы — это процесс поиска и устранения ошибок в программе, производимый по результатам ее прогона на компьютере.
Тестирование — это испытание, проверка правильности работы программы в целом либо ее составных частей.
В чем заключается отладка?
Отладчики
пошаговое
исполнение
просмотр
текущего
значения
Что такое тест и тестирование?
Программу условно можно считать правильной, если ее запуск для выбранной системы тестовых исходных данных во всех случаях дает правильные результаты.
Тестирование может показать лишь наличие ошибок,
но не их отсутствие.
Э. Дейкстра
Вычислять эталонные результаты нужно обязательно до,
а не после получения машинных результатов.
Какими должны быть тестовые данные?
Пример. Система тестов для задачи нахождения корней квадратного уравнения ах2 + Ьх + с = 0
Из каких этапов состоит процесс тестирования?
Проверка в экстремальных условиях.
Проверка в нормальных условиях.
Проверка в исключительных ситуациях.
Характерные ошибки программирования
Неправильная постановка задачи
Правильное решение неверно сформулированной задачи
Неверный алгоритм
Выбор алгоритма, приводящего к неточному или неэффективному решению задачи
Ошибки анализа
Неполный учет ситуаций, которые могут возникнуть, логические ошибки
Семантические ошибки
Непонимание порядка выполнения оператора
Синтаксические ошибки
Нарушение правил, определяемых языком программирования
Ошибки при
выполнении
операций
Слишком большое число, деление на нуль, извлечение квадратного корня из отрицательного числа и т. п.
Ошибки в данных
Неудачное определение возможного диапазона изменения данных
Опечатки
Перепутаны близкие по написанию символы, например цифра 1 и буквы I , 1
Ошибки ввода-вывода
Неверное считывание входных данных, неверное задание форматов данных
Является ли отсутствие синтаксических ошибок свидетельством правильности программы?
пропуск знака пунктуации; несогласованность скобок; неправильное формирование оператора; неверное образование имен переменных; неверное написание служебных слов; отсутствие условий окончания цикла; отсутствие описания массива и т. п.
Ошибки,
которые
обнаруживает
транслятор
Логические
Ошибки
в циклах
Ошибки
ввода/вывода
Ошибки в
использовании
переменных
Ошибки
при работе
с массивами
Ошибки
в арифметических
операциях
Логические ошибки:
неверное указание ветви алгоритма после проверки некоторого условия; неполный учет возможных условий; пропуск в программе одного или более блоков алгоритма.
Ошибки в циклах:
неправильное указание начала цикла; неправильное указание условий окончания цикла; неправильное указание числа повторений цикла; бесконечный цикл.
Ошибки ввода-вывода, ошибки при работе с данными:
неправильное задание типа данных; организация считывания меньшего или большего объема данных, чем требуется; неправильное редактирование данных.
Ошибки в использовании переменных:
использование переменных без указания их начальных значений; ошибочное указание одной переменной вместо другой.
Ошибки при работе с массивами:
массивы предварительно не обнулены; массивы неправильно описаны; индексы следуют в неправильном порядке.
Ошибки в арифметических операциях:
неверное указание типа переменной (например, целочисленного вместо вещественного); неверное определение порядка действий; деление на нуль; извлечение квадратного корня из отрицательного числа; потеря значащих разрядов числа.
В чем заключается сопровождение программ ?
Сопровождение программ — это работы, связанные с обслуживанием программ в процессе их эксплуатации.