Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тестирование программного обеспечения. Фундамен...docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
935.81 Кб
Скачать

486 Часть III: Управление проектами и группами

Невозможность форматирования заголовков таблиц и подписей рисунков

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

Невозможность изменения масштаба графиков

У пользователя должна быть возможность изменить заданный по умол­чанию масштаб формируемых программой графиков и диаграмм.

Обработка ошибок

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

Предотвращение ошибок

В книге Йордана (Уоигёоп, 1975) целая глава посвящена технике пре­дотвращения ошибок. Программы должны быть защищены от недопусти­мого ввода и неправильной эксплуатации. Простейшим способом защиты является проверка вводимых данных.

Неверное начальное состояние

Если определенная область памяти должна содержать нули, программе не мешает это проверить, прежде чем ее использовать.

Неадекватная проверка пользовательского ввода

Недостаточно просто сказать человеку, что он не должен вводить чи­сел, состоящих больше чем из трех цифр. Программа должна проверить, действительно ли введенные данные соответствуют этому условию. Если пользователь может что-то ввести, программа должна адекватно на рто среагировать.

Неадекватная защита от испорченных данных

Где гарантия, что хранящиеся на диске данные в порядке? Возможно, кто-то редактировал файл, а может быть, он был испорчен в результате аппаратного сбоя. Даже если программист проверил файл после его запи­си на диск, необходимо удостовериться, что к моменту чтения файл остался в том же состоянии.

Приложение: Распространенные программные ошибки 487

Не выполнена проверка переданных параметров

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

Недостаточная защита от ошибок операционной системы

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

Не выполняется проверка версии

Если исполняемый код хранится в нескольких файлах, кто-то может попытаться использовать новую версию одних файлов со старой версией других. Модернизируя программное обеспечение, пользователи часто до­пускают подобные ошибки. Поэтому программа должна проверять версии всех своих файлов и сообщать пользователю о несоответствиях.

Недостаточная защита от неправильного использования

Люди могут намеренно вводить в программу неверные данные, чтобы посмотреть, как она на это отреагирует. Мотиваций всех и каждого не предусмотришь. Утверждение, что ни один разумный человек не станет использовать программу подобным образом не защищает ее от людей не­разумных.

Выявление ошибок

Как правило, у программ достаточно информации для определения правильности данных или их обработки. В этом разделе описаны некото­рые часто игнорируемые программистами возможности выявления ошибок.

Переполнение

Переполнение — это ситуация, когда результаты вычислений слишком велики, чтобы программа могла их обработать. Часто так получается при сложении или умножении очень больших чисел, при делении на нуль или делении очень маленьких чисел. Программа обязательно должна проверять