Основы тестирования программного обеспечения



         

Функции предсказания целесообразности - часть 2


Если e – переменная P, e выполняется при чтении или записи этой переменной. Если e – тип P, e выполняется при выполнении любой переменной типа e. Если e – макроопределение P, e выполняется при выполнении расширения этого макроопределения. Если e – сектор P, e выполняется при выполнении всех составляющих его операторов. Соответствующие значения термина "выполнение" могут быть определены по аналогии для других типов сущностей P.

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

Пусть EC обозначает множество покрытых сущностей:

EC = {e
E | (
t
T)(coversМ(t, E))}.

Обозначение |EC| используется для числа покрытых сущностей. Иногда удобно представить зависимость coversM(t, E) в виде бинарной матрицы C, строки которой представляют элементы T, а столбцы – элементы E. При этом элемент Ci,j матрицы C определяется следующим образом:

Ci, j = 1, если coversМ(i, j) Ci, j = 0, иначе

Степень накопленного покрытия, обеспечиваемого T, то есть общее число единиц в матрице C, обозначается CC:

|T| |E| CC = ?   ? Ci,j i=1 j=1

Отметим, что если ограничиться включением в C только столбцов, соответствующих покрытым сущностям EC, накопленное покрытие CC останется неизменным. В частности, для всех непокрытых сущностей u Ci,u равно нулю для всех тестов i (так как coversM(i, u) ложно для всех таких случаев). Следовательно, ограничение на EC при вычислении суммы, определяющей CC, приводит только к исключению слагаемых, равных нулю.

Пусть TM – подмножество T, выбранное М для P, и пусть |TM| обозначает его мощность, тогда TM = {t

T | M выбирает t}. Пусть sM – удельная стоимость отбора одного теста для TM при применении М к P, и пусть r – удельная стоимость выполнения одного теста из T на P и проверки его результата.


Содержание  Назад  Вперед