999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

正交試驗法在連鎖選擇結構基本路徑測試中的應用

2018-01-16 11:27:18蘇晶張冬梅
科技視界 2018年27期

蘇晶 張冬梅

【摘 要】基本路徑測試是應用最廣泛且測試覆蓋率較強的一種動態白盒測試方法,但該方法在處理連鎖選擇結構時存在局限性。在分析了基本路徑測試法和正交試驗法的特點后,本文通過示例闡述了兩者結合的測試方案,該方案可提高測試的效率和有效性。

【關鍵詞】基本路徑測試;正交試驗法;連鎖選擇

中圖分類號: TP311.53 文獻標識碼: A 文章編號: 2095-2457(2018)27-0156-002

DOI:10.19694/j.cnki.issn2095-2457.2018.27.069

【Abstract】Basic path testing is one of the most widely used dynamic white-box testing methods with high test coverage,but it has limitations in dealing with chain selection structures.After analyzing the characteristics of the basic path testing and the orthogonal test, this paper elaborates the test scheme of the combination of the two methods through examples,which can improve the efficiency and effectivenessof the test.

【Key words】Basic path testing;Orthogonal experiment;Chain selection

0 前言

基本路徑測試是McCabe提出的一種動態白盒測試方法,該方法設計出的測試用例可保證在被測程序的每一條可執行語句上至少執行一次,而且每個條件在執行時都能夠取到真假兩種值。因此該方法具有較強的覆蓋率和較好的測試效果,且應用最為廣泛。但該方法在處理連鎖選擇結構時,會出現獨立路徑難以確定、測試路徑覆蓋不均衡等問題,因此需要借助正交試驗法進行路徑的科學采樣,以提高測試的效率和有效性。

1 基本路徑測試面臨問題

1.1 基本路徑測試簡介

基本路徑測試[1,2]是在程序控制流程圖的基礎上,通過分析控制構造的環路復雜性,導出基本可執行路徑集合,從而設計測試用例的方法。該方法包括以下4個基本步驟。

(1)繪制程序控制流程圖

控制流程圖是描述程序控制流的一種圖示方式,是對程序流程圖的簡化,可以更加突出的表示程序控制流的結構。控制流程圖中包括結點和控制流線兩種圖形符號

(2)計算程序環路復雜性

環路復雜性是定量度量程序邏輯復雜度的一種尺度,在數量上表現為獨立路徑的條數,是確保程序控制流程圖中每條控制流線至少覆蓋一次所必須的測試用例數目的上界。

(3)確定獨立路徑集合

獨立路徑是指至少引入被測程序的一個新的可執行語句集或者一條新的條件路徑。由獨立路徑組成的基本路徑集合并不唯一,但每條路徑是唯一的。

(4)設計測試用例

根據程序判定結點給出的條件,選擇適當的數據以保證某一條路徑可以被測試到,設計測試用例的輸入數據和預期輸出,確保基本路徑集中的每一條路徑的執行。

1.2 基本路徑測試的局限性

當程序中判定多于一個時,形成的復雜選擇結構可以分為兩類:嵌套選擇結構和連鎖選擇結構。

對于嵌套選擇結構,若有n個判定語句,則其路徑總數為n+1,其數目與基本路徑測試法中獨立路徑數目相同,則滿足基本路徑覆蓋的測試用例,即可實現對路徑的100%覆蓋。

對于連鎖選擇結構,若有n個判定語句,則其路徑總數為2n,為了達成路徑覆蓋,需至少設計2n個測試用例,這種做法,雖然可保證測試的完備性,但隨著n的數目的不斷增加,測試路徑呈現指數級的增長趨勢,在有限時間和成本的條件下,無法保證測試的效率。

為了減輕測試負擔,可采用基本路徑測試法選取測試用例,其獨立路徑數目為n+1,與嵌套選擇結構的路徑數量級一致,可有效提高測試效率。但與此同時,也帶來了新的問題。若從2n條總路徑中隨機挑選n條路徑,并使其滿足基本路徑覆蓋準則,一方面路徑集合難以確定;另一方面,即使獲取了路徑集合,卻未必兼顧多個連鎖分支間的關聯關系,不能保證測試路徑的均勻分布。

綜上所述,在連鎖選擇結構的基本路徑測試中,需要借助于路徑的科學采樣方法,使得獨立路徑難以確定、測試路徑覆蓋不均衡等問題能夠得到妥善解決。

1.3 正交試驗法的引入

正交試驗法是從大量的試驗點中挑選出適量的、有代表性的點,應用伽羅瓦理論導出的正交表,合理安排實驗的一種科學的試驗設計方法。利用這種方法,可使所有的因子和水平在試驗中均勻的分配與搭配,均勻規律的變化[3]。軟件功能測試作為試驗的一種,完全可以利用正交試驗法進行測試數據的選擇,以提高測試的效率。

正交表應用在軟件測試中的表示形式為:

L測試用例數(輸入條件取值數輸入條件數)

利用正交試驗法設計測試用例,較使用其他方法具有如下優點[4]:

(1)節省測試工作工時。由于把現成的規范化的正交表直接應用到測試用例選取中,不需要多步驟的推導,也不需要豐富的經驗和創造力,可以有效減輕測試者的負擔。

(2)可控制生成測試用例的數量。利用加權篩選,考慮測試輸入條件與條件取值的重要程度及條件間的相互影響,做出一定的篩選,可以把生成測試用例的數量控制在允許范圍內。

(3)測試用例具有一定的覆蓋度。正交試驗法是一種合理的、有效的抽樣方法,對被測軟件來說,測試用例的涉及范圍在整體上比較均勻,可排除偏向于功能某個局部的可能性,與結構測試相配合,檢出故障率可高達50%以上。

通過上述分析可以看出,正交試驗法是科學有效的采樣方法,可應用于獨立路徑的確定過程中,以達到提高測試效率和有效性的目的。

2 連鎖選擇結構的測試方案

以下是被測試源代碼。

public static int test(int a,int b,int c){

1 int x=1;

2 if(a>=1)

3 x=x/a;

4 if(b==2)

5 x=x+2;

6 if(c<3)

7 x=x-1;

8 return x;

9 }

采用基本路徑測試法和正交試驗法生成測試用例的步驟如下。

(1)根據被測源代碼導出的程序控制流程圖如圖1所示。

(2)依據程序控制流圖計算環路復雜性。

McCabe給出了程序環路復雜性的三種計算方法。

①將環路復雜性定義為程序控制流程圖中的區域數,則V(G)=區域數=4。

②設E為程序控制流程圖的邊數,N為圖的結點數,則定義環路復雜性為V(G)=E-N+2=4。

③設P為程序控制流圖中的判定結點數,判定結點即為圖中出度大于1的結點,則定義環路復雜性為V(G)=P+1=4。

(3)根據程序環路復雜性確定獨立路徑數目。

該程序為連鎖選擇結構,總路徑數為23=8,而依據步驟(2)計算出的環路復雜性,表明最多只需確定4條獨立路徑,即可保證程序控制流程圖中每個結點及每條控制流線的覆蓋。

(4)借助正交試驗法進行路徑科學采樣,確定獨立路徑集合[5]。

通過分析可以看出,輸入條件的個數即為判定結點個數3;由于判定結點均為邏輯值,則輸入條件取值數為2。由此選擇出合適的二水平正交表L4(23),如表1所示。

將正交表中的值0映射為判定結點取假分支,值1映射為判定結點取真分支,則從8條路徑中采樣出的4條路徑分別為:

P1:1-2-4-6-8-9

P2:1-2-3-4-6-7-8-9

P3:1-2-4-5-6-7-8-9

P4:1-2-3-4-5-6-8-9

其中P4未包含之前3條路徑未訪問過的結點或弧,因此不需加入獨立路徑集合。

(5)設計測試用例。

根據獨立路徑集合中的3條獨立路徑,設計滿足基本路徑覆蓋的測試用例:

①覆蓋P1:a=0,b=1,c=3,預期輸出x=1;

②覆蓋P2:a=1,b=0,c=1,預期輸出x=0;

③覆蓋P3:a=0,b=2,c=1,預期輸出x=2。

3 結論

采用基本路徑測試法分析路徑,正交試驗法對路徑進行科學采樣,兩種測試方法雙劍合璧,可以有效解決連鎖選擇結構的測試問題。一方面,大大減少了測試用例的數量,力爭用盡可能少的測試發現盡可能多的缺陷,保證了測試的效率;另一方面,測試用例不僅滿足基本路徑的覆蓋準則,而且能夠實現每個判定結點取值的均勻分配及判定結點取值間兩兩組合的均勻搭配,保證了測試的有效性。

【參考文獻】

[1]佟偉光.軟件測試(第二版)[M].北京:人民郵電出版社, 2015.

[2]佘鳳.淺談白盒測試之基本路徑測試方法研究[J].軟件工程師,2014,(12):17-18.

[3]王蕾.基于正交試驗法的測試用例設計[J].電腦知識與技術,2010,6(21):5782-5783.

[4]鄭人杰.軟件測試[M].北京:人民郵電出版社,2011.

[5]向華.關于白盒測試基本方法的分析[J].江漢大學學報(自然科學版),2003,(1):38-41.

主站蜘蛛池模板: 国产精品99r8在线观看| 91精品视频播放| 免费又爽又刺激高潮网址| 欧美午夜在线播放| 少妇极品熟妇人妻专区视频| 亚洲天堂网在线观看视频| 久久精品国产一区二区小说| 久久精品国产精品一区二区| 成人午夜天| 四虎影视无码永久免费观看| 国产特一级毛片| 女同久久精品国产99国| 国产在线自揄拍揄视频网站| 香蕉久人久人青草青草| 在线欧美国产| 色偷偷一区| 午夜国产大片免费观看| 午夜欧美在线| 狠狠色丁婷婷综合久久| 亚洲国产精品不卡在线| 午夜毛片免费观看视频 | 中字无码av在线电影| 国产成人一区二区| 日韩福利在线视频| 国产欧美日韩资源在线观看| 美女啪啪无遮挡| 精品五夜婷香蕉国产线看观看| 国产真实二区一区在线亚洲| 久久黄色免费电影| 亚洲精品麻豆| 99热这里只有精品免费| 蜜桃视频一区二区| 2020最新国产精品视频| 久久不卡国产精品无码| 精品少妇人妻无码久久| 激情无码字幕综合| 99久久性生片| 91色综合综合热五月激情| 无码AV日韩一二三区| 日韩成人在线网站| 亚洲一区第一页| 国产三区二区| 国产无人区一区二区三区| 亚洲天堂日韩av电影| 免费国产福利| 高清不卡毛片| 亚洲视频a| 99er这里只有精品| 亚洲首页国产精品丝袜| 亚洲精品无码AV电影在线播放| 国产三级国产精品国产普男人| 毛片基地美国正在播放亚洲| 久久久久无码国产精品不卡| 国产成人精品一区二区三区| 精品人妻一区二区三区蜜桃AⅤ| 在线观看91精品国产剧情免费| 高清无码手机在线观看| 欧美日韩国产综合视频在线观看| 日韩无码精品人妻| 性欧美精品xxxx| 亚洲三级成人| 丁香五月亚洲综合在线 | 国产jizzjizz视频| 日韩AV无码免费一二三区| 欧美在线国产| 91精品aⅴ无码中文字字幕蜜桃 | 72种姿势欧美久久久久大黄蕉| 日本久久网站| 欧美自拍另类欧美综合图区| 国产嫩草在线观看| 日韩在线第三页| 午夜福利网址| 国产日本欧美亚洲精品视| 无码高清专区| 青青草国产免费国产| 婷婷六月在线| 高清欧美性猛交XXXX黑人猛交| 久久国产精品影院| 国产一级毛片高清完整视频版| a级毛片免费看| 手机成人午夜在线视频| 欧美亚洲第一页|