Ошибки в программе неизбежны; профессионализм — в том, чтобы находить их системно. Для этого нужны отладчик, тесты разных уровней и умение подобрать проверочные данные так, чтобы их было немного, но они ловили главное.
Что нужно знать
- Ошибки: синтаксические (не компилируется), времени выполнения (падение), логические (неверный результат).
- Отладчик: точки останова, пошаговое выполнение, просмотр переменных; отладочный вывод — простая альтернатива.
- Уровни тестирования: модульное → интеграционное → системное → приёмочное.
- Чёрный ящик — по спецификации, без кода; белый ящик — с учётом устройства кода.
- Классы эквивалентности: из каждого класса входных данных достаточно одного теста.
- Граничные значения: тестировать края диапазонов (0, 1, максимум, максимум + 1).
- Регрессионное тестирование после правки проверяет, что ничего не сломалось.
- Нагрузочное тестирование измеряет время и память под большой нагрузкой.
Где чаще всего ошибаются
- Тестировать только «удобные» значения, забывая границы.
- Не перезапускать старые тесты после исправления.
- Путать логическую ошибку с ошибкой времени выполнения.
Проверить себя
По этой же теме курса есть проверочная работа из 15 заданий на 25 минут. Проверка автоматическая, результат виден сразу — и по работе целиком, и по каждой теме.
Программирование (ИТ-класс) · 10–11 классы · Проверка и отладка программного кода