學習《Model Based Testing with Labelled Transition Systems》

LTS綜述

標記變遷系統LTSLabeled Transition System)是一種傳統的被廣爲接受的基於抽象狀態機的狀態變遷模型. 標記變遷系統最先分別由 8]和 n[ 9]兩人提出來, 而後P n在此基礎上將變遷系統中增加了一個元: 標記( 動作) 0]. S是形式化一致性測試的一個重要研究方向[ 1], 它常常用於形式化地描述分佈式系統和協議的行爲, 成爲這些系統說明、 實現和測試研究的有力工具, 同時也可以對安全協議進行驗證[ 2]. 另外, S還能作爲許多形式描述語言的語義模型, 如C S、 P、 OTO S、 E、 L等.

[2008]Model Based Testing with Labelled Transition Systems

模型化測試的分類,依據:模型使用的種類、測試關注的特性方面、涉及的形式化的度、系統的訪問和觀測度。因此,可分爲:形式化的、基於規範的、活躍的、黑盒的、功能性的等測試。

測試的基礎是協議規範。IUT是個黑盒,我們並不知道其內部細節。ioco:定義規範和實現間一致性的形式化關係。

形式化測試

關於一致性,假設任何IUT的現實實現都可以用iIUT被模型化。這裏有個trickMOD是先驗選擇的,指向一些通用的實現,一般認爲是測試假設。也就是說在MOD集合內,存在一個合法的iIUT,但不是說這個模型是先驗的。

imp є IMPS×SPECS

s SPEC if  i imp s

T TESTi passes T ⇔∀t T : i passes t.

i MOD : i imp s ⇐⇒ i passes Ts

完全的測試是無限的,最終也是現實上不可能實現的。因此,通常測試集上較弱的實現一般這麼說:他們是合理的,那意味着所有正確的實現和一些不正確的實現都可能通過。測試致力於發現錯誤,而不能保證完全沒有錯誤,完全發現錯誤是一直耗盡行爲。SOUNDexhaustive

genimp SPEC P(TEST)

 

標號變遷系統:

定義:標號變遷系統是一個四元組 < S, L , T, s0 >   

S 是非空有限狀態集合;

L是一個有限的標號集合;

是轉換關係;

是初始狀態。

標號集合L表示系統所有的可觀察動作, 特殊的標號 表示不可觀察的內部動作。

T 中的元素是一個三元式 ,其中 ,也可以寫成 ,表示系統在動作 下從狀態 s 到達狀態 s’。將 L 上的所有標號變遷系統記爲 LTSL)。

跡(Traces)是LTS 理論中的重要概念,它是系統可觀察動作的一個有限序列。L上所有跡的集合用 L*表示, 表示空序列。

基本跟LTS中文版一樣。

 

如上可以看到,LTS用樹或圖來表示並不那麼靈活,現實的系統往往有上billions的狀態,所有完全畫出或枚舉出他們來是不現實的。因此,定義一種使用LTS的語言來表示。稱這種語言爲process language(處理語言)

 hide G in B | P
這裏 L是一個標號,B是表示一個行爲, 表示行爲的一個可數集合,G L是標號的一個集合,P是進程名。
動作前綴標定  ; B定義一個行爲沒能指顯動作 ,然後表現爲BiB  ; B相似,但i表示內部動作
選擇表達 表示行爲的選擇,表現爲集合 中的一個處理,這個選擇取決於前面已經做的第一個轉換。使用 表示 的縮寫,即表示行爲可表現爲B1,也可以表現爲B2stop 的縮寫,例如那些不能做任何動作的行爲就可以稱爲死鎖進程。
仔細看中文版
輸入輸出變遷系統IOTS
見中文版。
       {S, Lu, LI{θ},T,s0}IOTS(LU,LI {θ})
T是有限狀態,S表示兩個特定的狀態passfail
3.6提要
LTS是形式化理論中一個基礎模型。IOTS類似input/output automata(IOA)Input-Output State Machines,但他們與經典的FSMMealy Machine是不同的。但IOTSIOA也有不同,區別在於輸入使能上面,看參考其他文獻。
4實現關係
一般意義上IOTSLI,LU)與LTSLI,LU)之間的關係可看做一種實現關係。
主要講ioco
見中文4.2.1
ioco的其他變種包括:TGV-iocomiocotiocotiocosioco等,
記得翻譯4.3的提要

5使用LTS進行測試
首先介紹測試執行。

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章