113
Напомним два основных определения, на которых базируется оценка правильности про-
грамм по результатам их тестирования:
1) программа объявляется содержащей ошибки, если можно указать тесты, при которых
выполнение программы на ЭВМ приводит к отказу, сбою или получению неправильных результа-
тов;
2) программа является правильной, если при любых допустимых исходных данных она
дает правильные результаты.
Напомним два дополнительных, но весьма существенных определения допустимости ис-
ходных данных:
1) исходные данные считаются допустимыми, если для этих данных существует решение
поставленных задач;
2) исходные данные недопустимы, если для этих данных поставленная задача не имеет
решений.
Наконец правильность результатов решения регламентируется следующими двумя
определениями:
1) результаты решения правильные, если они соответствуют требованиям поставленной
задачи;
2) результаты решения неправильные, если они противоречат требованиям поставленной
задачи.
Подбор тестов для проверки программ опирается на некоторые общие принципы, среди ко-
торых можно выделить следующие:
1) проверка частных случаев задачи;
2) проверка основных случаев задачи;
3) проверка граничных случаев.
Частные случаи
- те, которые допускают простейшие способы решения и проверки пра-
вильности результатов. Граничными случаями объявляются данные, которые лежат на границе
между допустимыми и недопустимыми данными.
Разбор этих понятий проведем на примере типичной экзаменационной задачи по информа-
тике.
Задача. «Средняя зарплата».
Среди N сотрудников отдела выделить тех, кто получает зарплату выше средней по данным
из следующей таблицы:
Иванов
начальник
2500
Петров
сотрудник
1800
Сидоров
секретарь
900
Типичность этой задачи заключается в том, что она является одной из задач обработки
данных, представленных в нашем случае таблицей. Частным случаем в этой задаче является таб-
лица, состоящая из одной строки (случай N = 1). Граничным случаем - ситуация, когда все со-
трудники получают одинаковую зарплату и никто из них не получает зарплату выше средней.
Типичными ошибками в программах решения этой задачи может быть отсутствие обра-
ботки частного случая, когда N = 1, либо отсутствие ответа на граничную ситуацию, когда все
получают одинаковую зарплату.
Приведем примеры тестов, применявшихся при проверке на ЭВМ правильности программ
решения этой задачи:
1) тест1 (проверка основного случая):
Иванов
начальник
2500
Сидоров
секретарь
900
2) тест2 (проверка частного случая):
Иванов
начальник
2500
|