業(yè)務模型在軟件測試中的應用
作者:網(wǎng)絡轉載 發(fā)布時間:[ 2011/1/5 15:21:17 ] 推薦標簽:
、芨鶕(jù)業(yè)務流程關系場景的輸入集合確定測試用例輸入集合。
⑤根據(jù)業(yè)務流程關系場景的輸出集合確定測試用例輸出集合。
業(yè)務流程一般包含多個場景,場景之間轉移關系也較復雜,這些復雜性不利于測試用例生成。因此,在生成測試用例前,需要根據(jù)簡化原則簡化業(yè)務流程的描述與場景轉移關系。業(yè)務流程簡化原則包括:原則1:子圖分解原則。將一個業(yè)務流程分解為若干個子流程,分解前后的流程是等價的。原則2:循環(huán)活動簡化原則。對于可多次重復的活動,規(guī)定活動重復的大次數(shù),以避免發(fā)生死循環(huán)。原則3:并發(fā)活動簡化原則。如果兩個并發(fā)活動之間相互獨立,可任選一個執(zhí)行順序,以串行方式執(zhí)行活動;如果并發(fā)活動在條件滿足時,必須同時執(zhí)行,則將活動合并。原則4:場景簡化原則。對較大系統(tǒng)進行分析時,會造成一個測試場景過于龐大,因此,可劃分出系統(tǒng)的子場景。
這些簡化原則,將復雜的業(yè)務流程轉化為只包含順序關系場景的業(yè)務流程,提高了測試用例的質量。
1.4 測試用例執(zhí)行順序的確定
當測試資源有,不僅要考慮測試用例是否覆蓋所有被測功能,更要制定合理測試用例執(zhí)行順序,降低“測試逃逸”風險。
測試用例執(zhí)行順序可以通過業(yè)務模型的場景優(yōu)先級確定。場景優(yōu)先級的獲得有靜態(tài)分析與動態(tài)調整兩種方法。靜態(tài)分析是在建立業(yè)務模型時,通過軟件失效模式和影響分析(SFMEA,softwarefailuremodeandeffectsanalysis)為場景靜態(tài)分配優(yōu)先級;動態(tài)調整是在軟件測試過程中,根據(jù)軟件質量特征再次進行SFMEA分析,動態(tài)調整場景優(yōu)先級。測試用例可以通過與業(yè)務流程之間的聯(lián)系,以及SMF獲得場景優(yōu)先級,為確定測試用例執(zhí)行順序提供有力依據(jù)。
2、實例應用
某信息采集系統(tǒng)在試用過程中,用戶反饋由于信息錄入員提交的信息有誤,系統(tǒng)中經(jīng)常存在一些無效信息。為避免該問題,用戶提出增加“提交審核”業(yè)務,即信息錄入員提交的信息經(jīng)管理員審核通過后,才可進入信息采集系統(tǒng)。該項目開發(fā)采用敏捷方法,業(yè)務模型在項目需求獲取階段已建立。為盡快響應用戶需求,軟件開發(fā)設計與測試設計同時開始,測試人員使用業(yè)務模型驅動測試活動,并貫穿整個測試過程。
2.1 測試計劃階段
2.1.1 業(yè)務規(guī)則
該階段主要修改內容是向信息錄入業(yè)務規(guī)則添加子規(guī)則信息審核。
2.1.2 場景
增加信息審核場景。
2.2 測試設計與開發(fā)階段
略
2.3 測試實施階段
根據(jù)場景優(yōu)先級可以計算出測試用例的優(yōu)先級TOP值(在關系場景中,單個場景優(yōu)先級高值)與AVG值(所有關系場景的平均值)等值。
2.4 測試評估階段
在測試評審階段,根據(jù)業(yè)務模型判斷軟件測試風險,評估軟件質量。后,根據(jù)測試結果,對業(yè)務模型的場景優(yōu)先級進行動態(tài)調整。例如:由于測試用例TC?F1?1通過測試,則可調低該測試用例關系場景的優(yōu)先級
3、結束語
本文在對相關基本概念進行說明的基礎上,提出了基于業(yè)務模型的測試過程,并重點闡述了測試用例生成及其執(zhí)行順序的確定方法。后,將研究成果應用于實際軟件系統(tǒng)的測試實踐,證明了本方法的有效性和正確性。在下一步研究中,將業(yè)務模型與自動化測試結合,設計一個基于業(yè)務模型的測試管理系統(tǒng)。隨著軟件工程的發(fā)展,軟件行業(yè)對測試越來越重視,只有不斷的探索、實踐新的軟件測試理論與方法,才能高效率完成測試任務,保證測試工作的有效性與可信性。
相關推薦

最新發(fā)布
性能測試之測試環(huán)境搭建的方法
2020/7/21 15:39:32軟件測試是從什么時候開始被企業(yè)所重視的呢?
2020/7/17 9:09:11Android自動化測試框架有哪些?有什么用途?
2020/7/17 9:03:50什么樣的項目適合做自動化?自動化測試人員應具備怎樣的能力?
2020/7/17 8:57:06幾大市面主流性能測試工具測評
2020/7/17 8:52:11RPA機器人能夠快速響應企業(yè)需求,是怎么做到的?
2020/7/17 8:48:05Bug可以真正消滅嗎?為什么?
2020/7/17 8:43:03軟件測試基本概念是怎么來的?軟件測試生命周期的形成歷經(jīng)了什么?
2020/7/16 9:11:10