Итерация по покрытиям. Нацеленная итерация Одно обобщённое воздействие на каждый элемент некоторого покрытия. Элементы покрытия перебираются по порядку.

Презентация:



Advertisements
Похожие презентации
Защита от взлома Лекция 10Защита от взлома Лекция 10.
Advertisements

Тестирование функциональности, не зависящей от истории взаимодействия системы с окружением Занятие 3.
Лекция 3 Ветвления. Инструкции и выражения Выражение становится инструкцией, если в конце его поставить точку с запятой. Выражения: a = b + c, i++, printf(...),
Операторы языка Си Лекция 5.
Методы автоматизации тестирования Лекция 2. Архитектура теста в UniTesK Генератор тестовой последовательности Оракул Медиатор на целевом языке Целевая.
Назначение CTesK. Архитектура теста в CTesK. Тестовая система Тестовая система Тестирование Целевая система Результаты тестирования результаты воздействия.
Операторы языка C#. Блок или составной оператор. Пустой оператор С помощью фигурных скобок несколько операторов языка, возможно перемежаемых объявлениями,
Друзья Пусть определено два класса, vector и matrix (вектор и матрица). Теперь определим функцию, умножающую матрицу на вектор. Пусть доступ к элементам.
©ρŧą Базовые конструкции языка.
Лекция 10 Структуры. Классификация типов данных Простые Целые, вещественные, void, перечисления Являются атомарными не состоят из других типов Адресные.
Функции Функция – именованная последовательность описаний и операторов, выполняющая некоторое действие. Может иметь параметры и возвращать значение. Функция.
Лекция 6 Функции. Объявления и определения Объявление функции – указание имени функции, а также входных и выходных параметров Определение функции – указание.
Лекция RAISE Specification Language: базовые типы, логика, декартовы произведения, множества и операции с множествами.
Лекция RAISE Specification Language: списки и операции со списками.
Операторы языка с++. Операторы в языке C++ предназначены для описания действий. Любой оператор может быть помечен меткой. Операторы отделяются друг от.
Киньзибаев Рашид. тип объектов, которые могут ссылаться на метод.
Операторы языка Pascal 1.Организация ввода/вывода 2.Оператор присваивания 3.Организация ветвления 4.Циклы 5.Передача управления 6.Стандартные функции 7.Генератор.
НЕКОТОРЫЕ АЛГОРИТМЫ ВЫЧИСЛИТЕЛЬНОЙ МАТЕМАТИКИ. Табулирование функции одной переменной Составить алгоритм и программу вычисления таблицы значений функции.
Пример 2 Записать корректно подстановку Решение. Пример 3 Вычислить функцию-константу: Решение.
Лекция 4 Инструкции. Инструкции С++ инструкция: объявление ; выражение opt ; { последовательность_инструкций opt } if ( условие ) инструкция if ( условие.
Транксрипт:

Итерация по покрытиям

Нацеленная итерация Одно обобщённое воздействие на каждый элемент некоторого покрытия. Элементы покрытия перебираются по порядку. Для каждого фиксированного элемента подбираются конкретные данные для воздействия.

Итерация по элементам покрытия с функцией вычисления Покрытие Внутри сценарного метода –Конструкцию iterate coverage Способ подбора конкретных данных. Точку проверки попадания в требуемый элемент. Действия, которые нужно выполнить, если мы попали в нужный элемент.

Пример 1 extern coverage IntCoverage( int i ) = { POSITIVE, ZERO, NEGATIVE }; scenario bool s() { iterate coverage IntCoverage { int j = -2; for( ; j < 2; j ++ ) filter IntCoverage( j ) { abs_impl( j ); } } Итерация по элементам глобального вычислимого покрытия.

Пример 2 extern coverage IntCoverage( int i ) = { POSITIVE, ZERO, NEGATIVE }; specification void f( int x, int y ) coverage C = IntCoverage( x ) * IntCoverage( y ) ; // in scenario iterate coverage f.C { for( int x = -3; x

Пример 2 Определение стимула. extern coverage IntCoverage( int i ) = { POSITIVE, ZERO, NEGATIVE }; extern coverage f.C( int x, int y ) = IntCoverage( x ) * IntCoverage( y ); specification void f( int x, int y ); // in.sec specification void f( int x, int y ) { pre {... } coverage C; post {... } }

Итерация по «константным» покрытиям Покрытие Внутри сценарного метода –Конструкцию iterate coverage Способ подбора конкретных данных для некоторого элемента. Действия, которые нужно выполнить.

Пример 3 extern coverage Reqs = { REQ_1, REQ_2, REQ_3 }; scenario bool s() { iterate coverage Reqs { int j; switch( r ) { case Reqs.REQ_1: case Reqs.REQ_2: j = -1; break; case Reqs.REQ_3: j = 2 ; break; } filter Reqs { abs_impl( j ); } } Итерация по элементам глобального константного покрытия.