Отладка и тестирование приложений в среде Visual Studio 2005. Евсеева О.Н - 53 стр.

UptoLike

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

53
Измененное начальное значение переменной z в мутанте Р1 выделено в
тексте программы светлым тоном.
В P2 изменено начальное значение переменной i с 1 на 0 и граничное зна-
чение индекса цикла с n на n-1.
// Метод вычисляет неотрицательную степень n числа x
static public double PowerMutant2(double x, int n) // Р2
{
double z=1;
if (n>0)
{
for (int i=0;n-1>=i;i++)
{
z = z*x;
}
}
else Console.WriteLine("Ошибка ! Степень числа n должна быть больше 0");
return z;
}
Измененное начальное значение переменной i и границы цикла в мутанте
P2 также выделены в тексте программы.
При запуске тестов (X,Y) = { (x=2, n=3, y=8), (x=999, n=1, y=999), (x=0,
n=100, y=0) } выявляются все ошибки в программах-мутантах и ошибка в ос-
новной программе, где в условии цикла вместо n стоит n-1.
3.3. Оценка полноты тестирования программы по выбранному
критерию
Тестирование программы Р по некоторому критерию C означает покры-
тие множества компонентов программы P М = {m1...mk} по элементам или по
связям. Оценка уровня оттестированности программы опирается на множества
неизбыточных тестов.
T={t1...tn} – кортеж неизбыточных тестов ti.
Тест ti неизбыточен, если существует покрытый им компонент mi из
M(P,C), не покрытый ни одним из предыдущих тестов t
1
...t
i-1
. Каждому ti соот-
ветствует неизбыточный путь pi – последовательность вершин от входа до вы-
хода.
V(P,С) – сложность тестирования Р по критерию Сизмеряется мак-
симальным числом неизбыточных тестов, покрывающих все элементы множе-
ства M(P,С).
DV(P,С,Т) – остаточная сложность тестирования Р по критерию С
измеряется максимальным числом неизбыточных тестов, покрывающих эле-
менты множества M(P,С), оставшиеся непокрытыми, после прогона набора тес-
тов Т. Величина DV строго и монотонно убывает от V до 0.