[發明專利]一種基于可達路徑的軟件測試方法有效
| 申請號: | 201010235307.1 | 申請日: | 2010-07-23 |
| 公開(公告)號: | CN101901188A | 公開(公告)日: | 2010-12-01 |
| 發明(設計)人: | 趙玉新;孫紀瑋;劉廠;高峰;張振興;沈志峰 | 申請(專利權)人: | 哈爾濱工程大學 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 150001 黑龍江省哈爾濱市南崗區*** | 國省代碼: | 黑龍江;23 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 路徑 軟件 測試 方法 | ||
技術領域
本發明涉及的是一種軟件測試方法。
背景技術
軟件測試的實質是根據軟件開發各階段的規格說明和程序的內部結構設計測試用例,并用這些測試用例去驅動被測程序,觀察程序的執行結果,驗證實際運行結果與期望結果是否一致。正確合理的選取測試用例是軟件測試的核心與關鍵。測試用例是直接與程序的結構相關的,因此結構測試尤為重要,它是根據程序的內部結構設計測試用例。這種結構測試要求對被測程序的結構特性做到一定程度的覆蓋,需要選擇一種覆蓋準則并確定邏輯路徑。每個測試用例需要執行特定的路徑,首先面臨的問題就是如何確定一條可達的路徑??蛇_路徑的選擇可以有效的避免冗余測試用例生成及路徑生成的耗費,從而保證測試的充分性。
程序切片技術是一種分析和理解程序的技術,具有可以簡化問題,縮小目標范圍的特點,在軟件維護、程序調試、測試、代碼理解等諸多領域有著廣泛的應用。它的原理和方法是由Mark?Weiser于1979年在他的博士論文中首次提出來的。此后,在他的基礎上又有許多人提出了不同的程序切片定義和切片算法,其中包括Horwitz提出的程序切片算法,他將程序依賴圖(PDF)擴展為系統依賴圖(SDG),解決了Weiser提出的算法中無法解決過程調用的問題;以及Canfora提出的條件切片技術;Korel和Laski提出的動態切片概念等等。基于程序切片的軟件測試是一種以程序或程序和需要相結合為基礎的測試,根據程序的不同切片來縮小軟件的測試范圍,并提高軟件測試的效率。同時由于程序切片考慮程序存在的各種依賴關系(不僅僅是數據依賴和控制依賴),使得測試的準確性得到提高。
目前,對于可達路徑的確定方法主要有兩種:一是不可達路徑的排除,二是可達路徑的選擇。不可達路徑的排除主要分為靜態方法和動態方法。
文獻《基于最少謂詞思想的可達路徑選擇》(CNKI)指出傳統的不可達路徑排除方法存在很大的缺陷:
(1)通過靜態分析,確定存在的分支沖突,從而排除掉不可達路徑,但該方法效率較低,且受到靜態分析方法、手段的影響,判別所有的不可達路徑幾乎是不可能的。
(2)動態方法由于其試探性具有以下缺點:
①在確定某條路徑為不可達路徑之前,已經為探測測試用例而反復執行搜索,耗費較大。
②對于測試域窄的可達路徑,因其測試用例不易搜索到,可能會被排除掉,直接影響著測試的充分性。
(3)以符號執行方式產生測試用例時,在解謂詞方程組的同時,可通過方程組的有解、無解判定不可達路徑。但符號執行方法的缺陷也同樣存在于不可達路徑的判定方面,因此不可達路徑問題需要更有效的解決方法。
文獻《基于最少謂詞思想的可達路徑選擇》同時指出積極選擇可達路徑的思想可有效地減少不可達路徑的產生,基于可達路徑的思想具有以下優點:
①早期排除不可達路徑不僅可以有效避免冗余測試用例的生成,更因其早在路徑生成之前的決策,使得生成冗余路徑的耗費也得以避免。
②避免從完整的路徑覆蓋中因排除掉部分不可達路徑而影響測試的整體覆蓋率,從而保證測試的充分性。
可達路徑的選擇方法主要有最小謂詞法、應用數據流和控制流的可達路徑選擇法、探測分支沖突法。但是這些算法由于實現的不同,同樣會影響路徑的可達效果,因此,需要找到一種有效的方法來改善目前可達路徑選擇算法的缺陷。
基于路徑的測試準則是各種測試準則中要求最高的一種,但是由于路徑可達性問題的存在,降低了基于路徑的測試效率。因此如何有效地分析選擇路徑是基于路徑測試中的一個關鍵問題,有效地準確的選擇路徑能夠提高軟件測試的效率。對于路徑可達性的分析,是從另一個角度分析選擇路徑使測試用例在選擇好的路徑上執行。同時也為基于路徑的軟件測試工作提供更好的前期處理結果,從而提高測試的效率保證軟件的質量。直接分析可達路徑具有以下優點:第一,早期排除不可達路徑可以有效避免冗余測試用例生成的耗費;第二,避免部分不可達路徑而影響測試的覆蓋率,從而保證測試的充分性。
發明內容
本發明的目的在于提供一種能提高路徑的選擇效率和準確性的基于可達路徑的軟件測試方法。
本發明的目的是這樣實現的:
本發明中涉及的路徑切片概念的含義如下:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于哈爾濱工程大學,未經哈爾濱工程大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010235307.1/2.html,轉載請聲明來源鉆瓜專利網。





