[發明專利]一種基于謂詞自適應隨機測試的測試用例集擴增方法有效
| 申請號: | 201110306943.3 | 申請日: | 2011-10-10 |
| 公開(公告)號: | CN102508770A | 公開(公告)日: | 2012-06-20 |
| 發明(設計)人: | 陳振宇;房春榮;楊忠軍;趙志宏;張杰 | 申請(專利權)人: | 南京大學 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 南京天翼專利代理有限責任公司 32112 | 代理人: | 黃明哲 |
| 地址: | 210093 江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 謂詞 自適應 隨機 測試 用例集 擴增 方法 | ||
1.一種基于謂詞自適應隨機測試的測試用例集擴增方法,程序中的分支條件表達式稱為分支,由分支條件回溯至輸入域的表達式稱為謂詞,其特征是用于回歸測試,結合軟件修改分析的白盒測試技術與自適應隨機測試ART的黑盒測試技術,首先進行謂詞提取,然后通過謂詞距離引導ART進行測試用例集擴增,包括以下步驟:
1)使用Dejavu測試用例選擇方法,從原測試用例集中選擇經過修改部分的測試用例,構成已選擇測試用例集;
2)靜態分析回歸測試的新版本程序,提取程序中所有能被提取的謂詞;
3)采用謂詞序列值的Jaccard距離計算測試用例之間的距離:將提取出的謂詞組成一個謂詞集合,謂詞數量記為Nall,謂詞結果集中相同值的數量記為Nsame;然后使用測試用例t靜態執行謂詞得到一個謂詞結果集合R;通過謂詞結果集合R計算測試用例間的謂詞距離,測試用例間的謂詞距離D(t1,t2)采用Jaccard距離計算,如下所示:
D(t1,t2)=1-Nsame/Nall
將所得謂詞距離定義為測試用例間的距離;
4)進行基于謂詞的自適應測試用例生成過程,生成新的測試用例集,具體過程為:在輸入域上隨機生成n個測試用例,分別計算生成的測試用例與已選擇測試用例集的各個測試用例之間的謂詞距離,并將所得最小距離作為該生成的測試用例與已選擇測試用例集之間的距離,然后將這n個測試用例中與已選擇測試用例集距離最大的那個作為新增的測試用例,重復此過程m次,整個過程終止,m為需要擴增的測試用例數量;或者在設定的時間內未擴增新的測試用例時,整個過程終止。
2.根據權利要求1所述的一種基于謂詞自適應隨機測試的測試用例集擴增方法,其特征是步驟4)中,在輸入域上隨機生成n個測試用例,n=10。
3.根據權利要求1或2所述的一種基于謂詞自適應隨機測試的測試用例集擴增方法,其特征是步驟2)中的謂詞提取為:從程序分支中靜態回溯所提取的表達式,并表示為輸入域變量和程序常量的表達式,其具體形式如下:
ExpressionΘConstant
Θ表示比較符號,Expression表示一個包含變量的表達式,Constant表示常量,對于謂詞的其它形式,通過變換表示成此形式;對于Expression中含有非輸入參數的變量,通過規約表示為輸入參數的形式,規約后的謂詞形式如下:
Expression?only?with?argumentsΘConstant
謂詞提取時:
1)忽略含有全局變量的分支;2)忽略含有對庫函數和第三方函數調用的謂詞。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京大學,未經南京大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110306943.3/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種金剛石繩鋸連接裝置
- 下一篇:一種電動控制彎角的內窺鏡





