[發明專利]一種多任務軟件測試用例進化生成方法在審
| 申請號: | 202110028394.1 | 申請日: | 2021-01-14 |
| 公開(公告)號: | CN112732577A | 公開(公告)日: | 2021-04-30 |
| 發明(設計)人: | 黨向盈;鞏敦衛;姚香娟;鮑蓉;姜代紅;阮少偉;陳磊;厲丹;李子龍;包季楠;袁偲朕 | 申請(專利權)人: | 徐州工程學院 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36;G06N3/12 |
| 代理公司: | 徐州市三聯專利事務所 32220 | 代理人: | 陳帥 |
| 地址: | 221000 *** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 任務 軟件 測試 進化 生成 方法 | ||
本發明公布了一種多任務軟件測試用例進化生成方法,目的依據變異分支與程序路徑的可執行性,將變異測試問題轉化為傳統的覆蓋路徑測試問題,采用多任務并行方式高效生成具有缺陷檢測能力的測試用例。首先靜態分析變異分支與程序路徑的執行相關性,將所屬執行路徑相同的變異分支分為同一組;然后,對多組變異分支建立基于路徑覆蓋的變異測試用例生成多任務優化模型;最后,利用多種群遺傳算法求解該模型,采用多任務并行方式高效生成具有缺陷檢測能力的測試用例。本發明將變異分支依所屬路徑進行分組,采用傳統成熟的路徑測試方法,有助于提高軟件測試的效率,生成具有高缺陷檢測能力的測試用例。
技術領域
本發明涉及計算機軟件測試領域,具體是一種多任務軟件測試用例進化生成 方法。
背景技術
軟件測試是指通過人工或自動的方法,檢測某個軟件或軟件系統的缺陷。變 異測試是一種強大但昂貴的測試技術,特別是對于殺死大量變異體的測試數據獲 取非常困難。變異分支是由原語句和它的變異語句組成的。變異分支的真分支被 一個測試數據覆蓋,表明在弱變異測試準則下,相應的變異被殺死。
一個被測程序一般會產生很多變異體,為了殺死這些變異體,也需要大量的 測試用例;而且,這些測試用例需要同時執行原程序和變異體,因此,變異測試 的效率通常很低。為了克服上述缺陷,Papadakis等人在2011年《Software Quality Journal》第19期發表的文章“Automatically performing weak mutation with the aid of symbolicexecution,concolic testing and search-based testing”一文提出一種新的 軟件測試方法。他們基于弱變異測試準則殺死變異體的問題,轉化為變異條件語 句真分支的覆蓋問題。為此,對于變異前后的語句s和s',基于弱變異測試的必 要條件,構建變異條件語句“ifs!=s'”,其真分支為一個標志語句,簡稱變異分 支;然后,把這些變異分支插入到原程序的變異前的語句s前面,這樣便形成了 新的被測程序。那么,能夠覆蓋新程序變異分支的測試用例,一定能夠基于弱變 異測試準則,殺死該變異分支對應的變異體。這樣做的好處是,能夠利用已有的 傳統結構測試的測試用例生成方法,生成變異測試用例。
變異分支是根據原語句變異而來,那么對于變異分支插入到原語句所屬路徑, 變化后的新路徑是否能夠被執行,需要分析變異分支與該路徑中原語句的后繼結 點,而這種執行關系,很難直接得到,需要通過靜態分析而來。如果能夠確定變 異分支融入某一條路徑后,路徑依然是可執行的,這樣就可以將生成殺死變異體 問題轉化為生成覆蓋路徑的測試用例問題。如果很多變異分支都可以融入到路徑 中,那么這些變異分支,就可以基于所屬執行路徑的分組,那么求解殺死變異體 問題,可以轉化為多路徑測試生成問題,建立多任務優化模型。最后,采用多種 群遺傳算法求解。
多種群遺傳算法是一種高性能的遺傳算法,它是將一個種群劃分為多個子種 群,每個子種群負責優化一個目標,這樣可以實現并行方式找到最優解,該算法 已經被廣泛的應用于軟件測試中。
發明內容
本發明為了解決現有技術中檢測眾多軟件缺陷的測試用例生成效率低下的 問題,提出了一種多任務軟件測試用例進化生成方法,該方法區別于原有方法的 特色在于,將所屬相同路徑的變異分支分為同一組,對于多個變異分支組,建立 多任務測試用例生成數學模型,采用并行方式生成具有高缺陷檢測能力的測試用 例。
本發明采用的技術方案:一種多任務軟件測試用例進化生成方法,該方法包 括以下步驟:
S1:基于所屬路徑執行的相關性分組變異分支,即靜態分析變異分支與程序 路徑的執行相關性,將所屬執行路徑相同的變異分支分為同一組,具體為:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于徐州工程學院,未經徐州工程學院許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110028394.1/2.html,轉載請聲明來源鉆瓜專利網。





