潘晶



摘要:本文研究分析了如何建立完整的需求追溯矩陣,以及如何通過需求追溯矩陣來實現快速測試的思想。
關鍵詞:需求追溯鏈;快速測試;測試管理工具
中圖分類號:TP311.52 文獻標識碼:A 文章編號:1007-9416(2019)12-0096-02
0 引言
軟件產品在正式上線前,通常需要經過多個版本的反復迭代,而上線后也需要不斷維護管理,這個過程中,測試占有很大比重,尤其當測試用例基數較大的情況下,重復性的執行未經篩選的測試用例集將消耗較多的時間及成本。因此,如何有效快速定位錯誤、縮小測試范圍,減少重復測試的工作量,提高回歸測試和維護的效率是各軟件開發企業亟待解決的問題。
1 需求追溯矩陣模型
1.1 需求追溯關系
軟件需求規格說明書作為最重要的軟件過程產品之一,也是對軟件系統測試依從性的基線。當測試以可驗證、無冗余的軟件需求規格說明書作為測試依從性基線,將需求規格說明書提取并條目化為具體的系統需求后,系統需求可與測試過程產品,包括測試需求、測試用例、測試執行包、缺陷等形成關聯追溯關系,而系統需求與系統需求之間也因相互影響而形成橫向的關聯關系,即多個從系統需求之間以及其分別關聯至缺陷的追溯鏈一起組成需求追溯矩陣,如圖1所示。
1.2 需求追溯矩陣模型
對關聯追溯的形式化描述如:(1)定義系統需求集合為S={s1,s2,s3…},測試需求集合為R={r1,r2,r3…},測試用例集合為C={c1,c2,c3…},測試記錄集合L={l1,l2,l3…},缺陷集合B={b1,b2,b3…};(2)假設與任意系統需求元素直接關聯的測試需求有若干個,且優先級不同,則定義測試需求優先級系數集合為P={ p1,p2,p3…},且p∈[0,1];假設與任意測試需求直接關聯的測試用例亦有不同優先級的若干個,則定義測試用例優先級系數集合為Q={ q1,q2,q3…},且q∈[0,1];(3)假設系統需求、測試需求、測試用例之間的關聯追溯關系可滿足函數關系,則定義s=SR(r),r=RC(c),c=CL(l),l=LB(b),且si= pjSR(rj)=p(j+n)SR(r(j+n))=p(j+m)SR(r(j+m))=…,ri=qjRC(rj)=q(j+n)RC(r(j+n)) = q(j+m)RC(r(j+m))=…;(4)系統需求與系統需求之間具備橫向的關聯關系,假設該關聯關系的緊密程度由橫向耦合系數決定,故定義矩陣橫向耦合系數集合為K={ k12,k23,k13…},且k∈[0,1],則系統需求集合元素與元素之間的關系為:si=kijsj= kj(j+n)sj+n=…。
基于上述描述,靜態的需求追溯矩陣模型如圖2所示。
2 通過追溯矩陣實現快速測試
需求追溯矩陣建立后,當軟件需求發生變更,或進行了缺陷修復時,即可通過需求追溯矩陣的正向關聯及逆向關聯快速篩選出回歸測試的測試用例。其中缺陷修復是從缺陷逆向追溯至系統需求后,再從系統需求正向追溯至待執行的測試用例。通過追溯矩陣的實現快速測試的方法為:
(1)由需求追溯矩陣模型可知:ci=qiRC-1(tj)=ci=qiRC-1[pjSR-1 (sn)],即在滿足函數關系時,主要影響因子為qi、pj,抽象用例與系統需求關聯關系的公式后可得ci=qipjSC-1(sn),qipj即優先級系數,假設X=f(qipj),X與測試用例的優先級有直接關系,X可決定測試用例的篩選。
(2)回歸測試時,靜態選擇若干縱向關聯的本輪測試待測的最低優先級用例,通過計算獲取X的最優值xb,而:
xb=xi±
(3)通過貪心算法,篩選出用例集C={c|所有滿足xn≥xb的測試用例},C即為通過需求追溯矩陣縱向關聯約減后的待測試用集。
(4)因為系統需求集合元素與元素之間的關系為:si=kijsj=kj(j+n)sj+n=…,故結合ci=qipjSC-1(sn)公式,ci=qipjSC-1(sn)= ci=qipjSC-1 [knm (sm)],故可知,篩選橫向關聯的系統需求對應用例還與k有關,假設Y=f(qipj knm),Y可決定橫向關聯的其他系統需求對應用例的篩選。
(5)靜態篩選若干關聯系統需求對應的最低優先級用例,通過計算獲取Y的最優值yb,而:
yb=yi±
(6)通過貪心算法,篩選出用例集C={c|所有滿足yn≥yb的測試用例},C即為通過需求追溯矩陣橫向關聯約減后的待測試用集。
(7)C+C即為符合本輪回歸測試要求的全部待執行測試用例集。
3 結語
在已有的研究基礎上[1-3],本文闡述了依據需求追溯矩陣實現快速測試的模型,該模型是通過系統需求與測試過程產品之間縱向的關聯追溯以及系統需求與系統需求之間的橫向關聯關系來實現快速測試。本文還通過已實際應用于工作的測試管理平臺工具展現出快速篩選用例結合自動化測試的方式帶來的測試效率提升。
參考文獻
[1] 付立偉.軟件維護可關聯追溯方法的研究與實現[D].西安:西安理工大學,2012.
[2] 章曉芳,徐寶文,聶長海,等.一種基于測試需求約簡的測試用例集優化方法[J].軟件學報,2007(4):821-831.
[3] 陳靜,楊美紅,王魯,等.基于關聯模式的回歸測試用例約簡模型[J].計算機工程,2011(2):63-65+68.
Research on Fast Test Method Based on Requirement Traceability Matrix
PAN Jing
(Southern Power Grid Digital Grid Research Institute Co., Ltd., Guangzhou? Guangdong? 510623)
Abstract:This paper studies and analyzes how to establish a complete requirements traceability matrix, and how to achieve rapid testing through the requirements traceability matrix.
Key words:requirements traceability chain; rapid testing; test management tools