Статическое тестирование кода (Static code analysis) используя метрику цикломатической сложности (cyclomatic complexity metric)
Это очень полезная техника которая нам позволит определить число необходимых позитивных тестов, которые будут равны цикломатической сложности программы.
Вычисление цикломатической сложности (cyclomatic complexity metric) с помощью построения графа
Цикломатической сложность вычисляется легко, путем суммирования всех узлов таких как if, while, for и др. внутри и добавляя 1Или по формуле
M = E − N + 2P,
где:
M = цикломатическая сложность,
E = количество рёбер,
N = количество узлов,
P = количество компонент связности.
К примеру проанализируем данный участок кода:
IF A = 100
THEN IF B > C
THEN A = B
ELSE A = C
ENDIF
ENDIF
Print A

В данном случае исходя из формулы цикломатическая сложность будет равна 8 — 7 + (2 * 1) = 3
Таким образом мы определили количество позитивных тестов для проверки данного участка кода. Для этого нам нужно 3 теста с разными входными данными. Но для полного тестирования кода нужно пройти еще несколько негативных тестов.
0 комментариев