Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике 3.2.4. Мутационный критерий (класс IV)Постулируется, что профессиональные программисты пишут сразу почти правильные программы, отличающиеся от правильных мелкими ошибками или описками такого рода, как перестановка местами максимальных значений индексов в описании массивов, ошибки в знаках арифметических операций, занижение или завышение границы цикла на 1 и т. п. Мутационный критерий предлагает подход, позволяющий на основе мелких ошибок оценить общее число ошибок, оставшихся в программе.
Подход базируется на следующих понятиях: Мутации - мелкие ошибки в программе. Мутанты - программы, отличающиеся друг от друга мутациями. Содержание метода мутационного тестирования состоит в следующем. В разрабатываемую программу P вносят мутации, т.е. искусственно создают программы-мутанты P1, P2... Затем программа P и ее мутанты тестируются на одном и том же наборе тестов (X,Y). Если на наборе (X,Y) подтверждается правильность программы P, и, кроме того, выявляются все внесенные в программы-мутанты ошибки, то набор тестов (X,Y) соответствует мутационному критерию, а тестируемая программа объявляется правильной. Если некоторые мутанты не проявили всех своих мутаций, то надо расширять набор тестов (X,Y) и продолжать тестирование. Пример применения мутационного критерия Рассмотрим следующую программу P. //
Метод вычисляет неотрицательную степень n числа x
Для нее создается две программы-мутанта P1 и P2. В P1 изменено начальное значение переменной z с 1 на 2. //
Метод вычисляет неотрицательную степень n числа x
Измененное начальное значение переменной z в мутанте Р1 выделено в тексте программы светлым тоном. В P2 изменено начальное значение переменной i с 1 на 0 и граничное значение индекса цикла с n на n-1. // Метод
вычисляет неотрицательную степень n
числа
x
Измененное начальное значение переменной 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.
|
1 |
Оглавление
|