基於模型的測試工具 Spec Explorer

2021-09-05 22:11:59 字數 1420 閱讀 2105

一、什麼是基於模型的測試

wiki的描述如下:基於模型的測試屬於軟體測試領域的一種測試方法。按照此方法,測試用例可以完全或部分的利用模型自動產生。以上所說的模型通常是指對被測系統(sut,system under test)某些(通常是功能性的)方面的描述。

模型一般都是對被測系統(sut,system under test)預期行為動作的抽象描述。 這些測試用例的集合就是我們平時所稱的抽象測試套件(abstract test suite). 抽象測試套件不可以直接執行於需測試的系統,因為,他們不在同一抽象級別。

測試套件(test suites)是由模型生成,而不是由源**生成。因此,基於模型的測試又常常被當作黑盒測試的一種形式。但從某種層面來說, 這並不十分準確。畢竟,基於模型的測試是與源**級的測試覆蓋率,以及對**的功能測試都有著很大的關係。

對於複雜的軟體系統中,如何應用基於模型的測試還在探索中。

在spec explorer的有篇文章:文章對基於模型的測試作了描述,並給出了一張簡圖進行說明:

基於模型的測試是乙個輕量級的,形式化的驗證軟體系統的方法。為什麼這麼說呢,因為首先,基於模型的測試對待測軟體系統(通常被稱為system under test,簡稱sut)進行形式化的建模,設計出機器可讀的模型;其次,和其他形式化方法比,基於模型的測試並不致力於讓待測軟體系統與規格說明在所有可能情況下都保持一致,而是系統化的從模型生成一組測試用例,使用這組測試用例測試待測軟體系統,得到充分的證據說明待測系統的行為與模型期望是一致的。輕量級和重量級的方法的根本區別在於乙個是充分證明,乙個是完全證明。目前完全驗證一致性的代價非常高,重量級的形式化方法往往難以被應用到實際工程中,而基於模型的測試在這方面體現了優勢,並已被運用到很多大型專案中。

二、基於模型測試工具spec explorer

spec explorer是微軟發布的一款與visual studio緊密整合的基於模型測試的工具。使用者可以通過spec explorer對乙個軟體系統的期望行為進行建模,並自動生成能夠在visual studio的測試框架下執行的測試**。模型可以用當前主流的程式語言c#開發,然後通過cord語言指令碼對模型進行配置和裁剪。

模型可以圖形表達方式檢視,幫助理解分析軟體系統預期行為,或與其他人溝通。模型的大小可以通過正規表示式來界定,而產生的測試套件不僅能夠在單獨的visual studio測試框架中執行,也能夠在其他單元測試框架中執行。

微軟的多個不同規模的專案都已將spec explorer 納入為開發流程的一部分。使用spec explorer 幫助這些團隊更快速建立測試用例、確保需求覆蓋的可預見性並提供專案生命週期管理及軟體更新的支援。

基於模型的測試工具 Spec Explorer

一 什麼是基於模型的測試 wiki的描述如下 基於模型的測試屬於軟體測試領域的一種測試方法。按照此方法,測試用例可以完全或部分的利用模型自動產生。以上所說的模型通常是指對被測系統 sut,system under test 某些 通常是功能性的 方面的描述。模型一般都是對被測系統 sut,syste...

基於python的效能測試工具 locust

現在有很多的效能測試工具,比如說我們熟悉的loadrunner jmeter ab webbench等等,這些工具如果對乙個沒用過的朋友來說,學習起來比較不容易,但是如果你能看懂python 會寫就更好了,就可用嘗試一下今天的主角locust,一款基於python的效能測試工具,它的優點是學習起來比...

基於WSP WTP的MMS傳輸 8 測試工具

八 測試工具 天的試用版本,然後利用軟體安裝根目錄下的mmscomp.exe 命令列工具生成以.mms 為副檔名的mms pdu 使用該工具,需要先製作彩信的資源檔案,步驟如下 1.製作.smil 檔案,用記事本編寫然後存為 smil 檔名可以隨意,擴充套件名為.smil 示例內容如下 檔案中指定的...