Методы автоматизации тестирования Лекция 2. Архитектура теста в UniTesK Генератор тестовой последовательности Оракул Медиатор на целевом языке Целевая.

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



Advertisements
Похожие презентации
Назначение CTesK. Архитектура теста в CTesK. Тестовая система Тестовая система Тестирование Целевая система Результаты тестирования результаты воздействия.
Advertisements

Тестирование функциональности, не зависящей от истории взаимодействия системы с окружением Занятие 3.
Расширение технологии UniTESK средствами генерации структурных тестов Дмитрий Воробьев
UniTesK технология тестирования ПО Е. Бритвина, Н. Казакова, В. Кулямин, А. Петренко.
Институт системного программирования РАН Автоматическая генерация базовых тестов для программных интерфейсов библиотек на основе заголовочных файлов Владимир.
Тестирование на основе моделей: теория, инструменты, применения В. Кулямин, А. Петренко.
Технологии тестирования ИСП РАН В. Кулямин
Технологии тестирования ИСП РАН В. Кулямин
ДЕЛЕГАТЫ Лекция 7 1. Зачем нужны делегаты 2 И данные, и код располагаются в памяти компьютера по определенным адресам. Передача адресов данных в C# происходит.
Тестирование Обеспечение качества. Тема 7 тестирование2 Аттестация и верификация Обзоры Инспекционные проверки Сквозной контроль.
Генерация оптимизированных для ручного выполнения сценариев тестирования приложений с графическим интерфейсом пользователя А.В.Баранцев, С.Г.Грошев, В.А.Омельченко.
Автоматное программирование А. А. Шалыто Санкт-Петербургский государственный университет информационных технологий, механики и оптики 2009 г.
Numeric and Mathematical Modules Волков Никита.
Лекция 2Лекция 2Структура программы Директивы препроцессора main () { Описания переменных Операторы }
Язык JavaScript Скриптовый язык для выполнения на html-страницах.
Типы данных Инна Исаева. Переменные Переменная - это как ящик, в котором можно хранить данные. Каждая переменная имеет своё имя, она служит для хранения.
Software engineering Дмитриев Андрей Владиславович ©
Лекция RAISE Development Method: некоторые виды спецификаций и проверка согласованности моделей.
Итерация по покрытиям. Нацеленная итерация Одно обобщённое воздействие на каждый элемент некоторого покрытия. Элементы покрытия перебираются по порядку.
Программирование на языке высокого уровня Лекция 2. Метод. Алгоритм. Программа. Кафедра АСОИУ ОмГТУ, 2012 Богатов Р.Н.
Транксрипт:

Методы автоматизации тестирования Лекция 2

Архитектура теста в UniTesK Генератор тестовой последовательности Оракул Медиатор на целевом языке Целевая система Обходчик конечных автоматов Итератор тестовых воздействий Библиотечный компонент Генерируемый компонент Целевая система Компонент, создаваемый вручную Спецификации Тестовый сценарий Медиатор Генерация

Сравнивающие оракулы Целевая система Сравнение – выработка вердикта Дополнительное вычисление результатов Тестовые воздействия Вердикт Проверка предварительных требований

Оценивающие оракулы Оценка результатов – выработка вердикта Тестовые воздействия Проверка предварительных требований Целевая система Вердикт

Пример спецификации на specification package; public class LogSpecification { specification public double log (double x) reads x { pre { return x > 0; } post { return Math.exp(log) == x; }

Пример спецификации на specification package; public class LogSpecification { double field; specification public void log () updates field throws IllegalStateException { post { if(field > 0) return Math.exp(field) else return thrown != null && thrown instanceof IllegalStateException; }

Пример спецификации на specification package; public class ComplexNumberSpecification { double r; double phi; invariant I () { return 0 < r && -Math.PI < phi && phi

Ветви функциональности specification package; public class LogSpecification { double field; specification public void log () updates field throws IllegalStateException { post { if(field > 0) { branch Normal case; return Math.exp(field) } else { branch Exceptional case; return thrown != null && thrown instanceof IllegalStateException; }

Медиатор в архитектуре теста Медиатор Тестовые воздействия Оракул Целевая система

Пример медиатора на specification package; mediator public class ComplexNumberMediator extends ComplexNumberSpecification { implementation public Complex target; public static ComplexNumberSpecification multiply (ComplexNumberSpecification c1, ComplexNumberSpecification c2) { Complex implArg1 = ((ComplexNumberMediator)c1).target; Complex implArg2 = ((ComplexNumberMediator)c2).target; Complex implResult = Complex.multiply(implArg1, implArg2); return ComplexNumberMediator.create(implResult); } public void mapStateUp() { r = Math.sqrt (target.x*target.x + target.y*target.y); phi = Math.atan2(target.y, target.x); }

Вопросы к коллоквиуму 1.Последовательность шагов разработки тестовых программ. 2.Способы представления свойств целевой программы. Перечислить способы и сравнить с точки зрения удобства автоматизации. 3.Способы формального описания свойств целевой программы. 4.Модели ошибок. 5.Модели тестирования. 6.Модели построения тестов. 7.Архитектура тестовой системы в UniTesK. Перечислить основные компоненты, определить их ответственности, описать схему работы теста. 8.Оракул. Разновидности оракулов. 9.Основные конструкции языка используемые для написания спецификаций. Результат операции, пре-значение выражения, созданное исключение. 10.Ветви функциональности. Другие критерии покрытия, извлекаемые из структуры спецификаций. 11.Медиатор. Устройство медиаторов в UniTesK. 12.Основные конструкции языка используемые для написания медиаторов. 13.Тестирование с открытым и с закрытым состоянием. Различия в построении медиаторов. 14.Механизм генерации тестовой последовательности в UniTesK. 15.Тестовый сценарий. Элементы сценария и разновидности сценариев. 16.Основные конструкции языка используемые для написания тестовых сценариев.