Методы тестирования программного обеспечения. Степанченко И.В. - 46 стр.

UptoLike

Составители: 

48
до и после применения этого ограниченного множества значений
входных данных.
Указанные свойства, несмотря на их кажущееся подобие, описывают
два различных положения. Во-первых, каждый тест должен включать
столько различных входных условий, сколько это возможно, с тем, чтобы
минимизировать общее число необходимых тестов. Во-вторых, необхо-
димо пытаться разбить входную область
программы на конечное число
классов эквивалентности так, чтобы можно было предположить (конеч-
но, не абсолютно уверенно), что каждый тест, являющийся представите-
лем некоторого класса, эквивалентен любому другому тесту этого класса.
Иными словами, если один тест класса эквивалентности обнаруживает
ошибку, то следует ожидать, что и все другие тесты этого класса эквива-
лентности будут обнаруживать ту же самую ошибку. Наоборот, если тест
не обнаруживает ошибки, то следует ожидать, что ни один тест этого
класса эквивалентности не будет обнаруживать ошибки (в том случае,
когда некоторое подмножество класса эквивалентности не попадает в
пределы любого другого класса эквивалентности, так как классы эквива-
лентности могут пересекаться).
Эти
два положения составляют основу методологии тестирования по
принципу черного ящика, известной как эквивалентное разбиение. Вто-
рое положение используется для разработки набора «интересных» усло-
вий, которые должны быть протестированы, а первоедля разработки
минимального набора тестов, покрывающих эти условия.
Примером класса эквивалентности для программы о треугольнике
(см. § 1.1) является набор «трех равных
чисел, имеющих целые значения,
большие нуля». Определяя этот набор как класс эквивалентности, уста-
навливают, что если ошибка не обнаружена некоторым тестом данного
набора, то маловероятно, что она будет обнаружена другим тестом набо-
ра. Иными словами, в этом случае время тестирования лучше затратить
на что-нибудь другое (на тестирование других классов
эквивалентности).
Разработка тестов методом эквивалентного разбиения осуществляет-
ся в два этапа:
1) выделение классов эквивалентности;
2) построение тестов.
3.2.1.1. Выделение классов эквивалентности
Классы эквивалентности выделяются путем выбора каждого входно-
го условия (обычно это предложение или фраза в спецификации) и раз-
биением его на две или более групп. Для проведения этой операции
ис-
пользуют таблицу, изображенную на рис. 5.
     до и после применения этого ограниченного множества значений
     входных данных.
     Указанные свойства, несмотря на их кажущееся подобие, описывают
два различных положения. Во-первых, каждый тест должен включать
столько различных входных условий, сколько это возможно, с тем, чтобы
минимизировать общее число необходимых тестов. Во-вторых, необхо-
димо пытаться разбить входную область программы на конечное число
классов эквивалентности так, чтобы можно было предположить (конеч-
но, не абсолютно уверенно), что каждый тест, являющийся представите-
лем некоторого класса, эквивалентен любому другому тесту этого класса.
Иными словами, если один тест класса эквивалентности обнаруживает
ошибку, то следует ожидать, что и все другие тесты этого класса эквива-
лентности будут обнаруживать ту же самую ошибку. Наоборот, если тест
не обнаруживает ошибки, то следует ожидать, что ни один тест этого
класса эквивалентности не будет обнаруживать ошибки (в том случае,
когда некоторое подмножество класса эквивалентности не попадает в
пределы любого другого класса эквивалентности, так как классы эквива-
лентности могут пересекаться).
     Эти два положения составляют основу методологии тестирования по
принципу черного ящика, известной как эквивалентное разбиение. Вто-
рое положение используется для разработки набора «интересных» усло-
вий, которые должны быть протестированы, а первое – для разработки
минимального набора тестов, покрывающих эти условия.
     Примером класса эквивалентности для программы о треугольнике
(см. § 1.1) является набор «трех равных чисел, имеющих целые значения,
большие нуля». Определяя этот набор как класс эквивалентности, уста-
навливают, что если ошибка не обнаружена некоторым тестом данного
набора, то маловероятно, что она будет обнаружена другим тестом набо-
ра. Иными словами, в этом случае время тестирования лучше затратить
на что-нибудь другое (на тестирование других классов эквивалентности).
     Разработка тестов методом эквивалентного разбиения осуществляет-
ся в два этапа:
1) выделение классов эквивалентности;
2) построение тестов.
    3.2.1.1. Выделение классов эквивалентности
    Классы эквивалентности выделяются путем выбора каждого входно-
го условия (обычно это предложение или фраза в спецификации) и раз-
биением его на две или более групп. Для проведения этой операции ис-
пользуют таблицу, изображенную на рис. 5.

                                  48