Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
mdd:uml_mbt [2014/06/01 10:55] – created nickolayyegorovmdd:uml_mbt [2026/08/29 07:59] (current) – external edit 127.0.0.1
Line 1: Line 1:
 +====== Подмножество UML для целей модельно-ориентированного тестирования ======
  
 +В работе рассматривается оригинальный подход к модельно-ориентированному тестированию системы, основанному на UML, а также автоматической генерации тестов на основе критериев покрытия. Рассматриваемый метод встроен в LEIROS Test Designer tool и в настоящее время используется в корпоративном и финансовом софте.
 +В работе определяется конкретное подмножество UML, необходимое для такого рода тестирования, также приводится пример его использования.
 +
 +Авторы рассматривают модельно-ориентированное тестирование как процесс автоматизации генерации тестов, основыванный на поведенческой модели тестируемой системы (ТС). Сами тесты генерируются в виде последовательностей операций, выполняемых на ТС, результат которых сравнивается с заранее известными правильными ответами.
 +
 +Описание подмножество UML (UML-MBT) основывается на 3 диаграммах: классов, объектов и состояний. При  этом накладываются следующие ограничения:
 +В диаграмме классов нет наследования, ассоциаций, аттрибуты могуть быть только Integer, Boolean, Enum. На диаграмме объектов запрещено динамическое их создание или уничтожение. Оно моделируется сорзданием / уничтожением ссылок.
 +События в диаграмме состояний ограничены действиями, описанными в диаграмме классов. Каждое событие может быть обработано только после завершения обработки предыдущего.
 +
 +Для вызовов и обработки переходов UML-MBT использует OCL-выражения двух типов: пассивные и активные. В пассивном контексте выражение интерпретируется как булева формула. Активные выражения подразумевают изменения состояния, модели, переменных или используется для инициализации возвращаемого значения действий.        
 +Выражения OCL могут быть использованы для описания поведения моделей и генерации тестов         на основе этого поведения. UML-MBT поддерживает определение внешних условий для модели. Определяются такие условия в специальных блоках комментариев, ограниченных маркерами вида  “/*@REQ:” и “@*/”.
 +
 +В статье рассматривается конкретный пример применения UML-MBT для генерации тестов на основе описания модели. Моделируется стек с операциями push,pop,size и максимальным размером MAX.
 +Ниже приведен список требований для модели, диаграмма классов, диаграмма объектов и диаграмма состояний. Также в работе приводится детальное описание переходов на диаграмме состояний.
 +
 +[[mdd:_detail:mdd:screen_shot_2014-05-30_at_12.47.03.png|]]
 +[[mdd:_detail:mdd:screen_shot_2014-05-30_at_12.43.44.png|]]
 +[[mdd:_detail:mdd:screen_shot_2014-05-30_at_12.44.31.png|]]
 +[[mdd:_detail:mdd:screen_shot_2014-05-30_at_12.48.28.png|]]
 +
 +В результате, приводится набор тестов, который будет сгенерирован на основе такой модели: 
 +[[mdd:_detail:mdd:screen_shot_2014-05-30_at_12.53.27.png|]]