Стратегия тестирования по принципу черного ящика

Комбинаторное покрытие условий

Критерий покрытия условий и решений

Критерий покрытия условий

 

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

1: a = 2, b = 0, x = 4 a, c, e

2: a = 1, b = 1, x = 1 a, b, d

+ покрытие операторов

 

Если после составления теста остаются непокрытые операторы, то необходимо дополнить набор тестов таким образом, чтобы каждый оператор выполнялся не менее одного раза.

 

 

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

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

 

 

Этот критерий требует, чтобы все возможные комбинации результатов условий в каждом решении, а также каждый оператор выполнялись по крайней мере один раз.

a<=1 b != 0

a>1 b != 0

a>1 b == 0

a<=1 b == 0

 

a == 2 x > 1

a != 2 x < 1

a == 2 x < 1

a != 2 x > 1

 

Для нашего варианта для покрытия всех возможных вариантов, нужно 4 теста. При составлении этих тестов, мы перекрыли 3 пути из 4-х возможных.

1: a = 2, b = 0, x = 2 a, c, e

2: a = 0, b = 0, x = 0 a, c, d

3: a = 0, b = 1, x = 2 a, b, e

4: a = 2, b = 1, x = 0 a, b, e

 

При составлении хорошего качественного теста, необходимо покрыть и 4-й путь.

1: a = 2, b = 0, x = 4 a, c, e

2: a = 2, b = 1, x = 1 a, c, e

3: a = 1, b = 0, x = 2

4: a = 1, b = 1, x = 1

5: a = 1, b = 1, x = 0 a, b, d

 

Таким образом, для программ, содержащих только одно условие, на каждое решение минимальным является критерий, набор тестов которого:

1. вызывает выполнение всех результатов каждого решения ,по крайней мере один раз;

2. выполняет каждый оператор, по крайней мере один раз.

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

 

 

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

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

1. Уменьшает более чем на один число других тестов, которые должны быть разработаны для разумного тестирования.

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

 

Стратегия черного ящика включает в себя следующие методы:

1. эквивалентное разбиение,

2. анализ граничных значений,

3. анализ причинно-следственных связей,

4. предположение об ошибке.