Спецификация и тестирование систем с асинхронным интерфейсом

       

Описание асинхронных метрик покрытия


Асинхронные метрики покрытия описываются совместно с описанием предусловий и постусловий интерфейсных операций целевой системы. Это позволяет локализовать описание требований и выделение элементов покрытия на основе этих требований. Элементы покрытия, как правило, соответствуют ветвям функциональности в поведении интерфейсной операции или ситуациям, интересным с точки зрения тестирования, таким как граничные условия.

Предположим, что для целевой системы были выделены k видов взаимодействий, инициируемых окружением, S = { Si | i = 1, … , k } и m видов взаимодействий, инициируемых целевой системой, R = { Rj | j = 1, … , m }. А асинхронная модель требований задана посредством асинхронной спецификации Spec = { SpecSi | i = 1, …, k; k > 0 }

Описание асинхронных метрик покрытия
{ SpecRj | j = 1, …, m; m ≥ 0 }.

Тогда метрика покрытия интерфейсной операции μ : VSi x XSi x YSi x VSi

Описание асинхронных метрик покрытия
R, являющаяся сюрьективной функцией в конечное множество R, используется для описания асинхронной метрики интерфейсной операции-стимула Si. Этой метрике покрытия соответствует асинхронная метрика покрытия асинхронной модели требований MRA[Spec], которую мы будем обозначать MA[μ].

MA[μ] = { Cr

Описание асинхронных метрик покрытия
2E | r
Описание асинхронных метрик покрытия
R }, где Cr = { ( v, x, y, v' )
Описание асинхронных метрик покрытия
V x X x Y x V | μ( v, x, y, v' ) = r}.

Аналогично определяются метрики покрытия интерфейсных операций-реакций. Метрика покрытия интерфейсной операции μ : VRj x Unit x YRj x VRj

Описание асинхронных метрик покрытия
R используется для описания асинхронной метрики интерфейсной операции-реакции Rj. Этой метрике μ соответствует асинхронная метрика покрытия MA[μ] асинхронной модели требований MRA[Spec]:

MA[μ] = { Cr

Описание асинхронных метрик покрытия
2E | r
Описание асинхронных метрик покрытия
R }, где Cr = { ( v, z, v' )
Описание асинхронных метрик покрытия
V x Z x V | μ( v, ε, z, v' ) = r}.

Также как и в синхронном случае, определение метрик интерфейсных операций не дает возможности задать произвольную асинхронную метрику покрытия.
Этот способ позволяет описывать только метрики покрытия, переходы которых помечены одной интерфейсной операцией. Но как показывает практический опыт, этого оказывается достаточно для измерения качества тестирования систем с асинхронным интерфейсов различных типов.
Второй способ описания метрик покрытия при помощи расширенных метрик покрытия интерфейсных операций также может быть использован при тестировании асинхронных систем. Асинхронная метрика покрытия, заданная посредством расширенной метрики покрытия интерфейсной операции Si μ' = { cp | p = 1, …, n; cp : VSi x XSi x YSi x VSi

Описание асинхронных метрик покрытия
Bool }, обозначается MA[μ']:
M[μ'] = { Cp
Описание асинхронных метрик покрытия
2E | p = 1, …, n }, где Cp = { ( v, x, y, v' )
Описание асинхронных метрик покрытия
V x X x Y x V | cp( v, x, y, v' ) }.
Также как и асинхронная метрика покрытия, заданная посредством расширенной метрики покрытия интерфейсной операции Rj μ' = { cp | p = 1, …, n; cp : VRj x Unit x YRj x VRj
Описание асинхронных метрик покрытия
Bool }:
M[μ'] = { Cp
Описание асинхронных метрик покрытия
2E | p = 1, …, n }, где Cp = { ( v, z, v' )
Описание асинхронных метрик покрытия
V x Z x V | cp( v, ε, z, v' ) }.

Содержание раздела