軟件測試通過檢測盡可能多的缺陷來保證軟件質量。變異測試是一種面向缺陷的測試技術。本書主要研究人工智能技術增強變異測試的理論及應用。本書融合人工智能中的進化算法和聚類,以及統(tǒng)計分析等方法,增強變異測試,是自動化、人工智能、應用數(shù)學及計算機等多個學科的有機交叉。研究內容具有明確的應用背景和產業(yè)需求,富有鮮明的新穎性和挑戰(zhàn)性。
本書可供高等院校計算機、自動化等專業(yè)的教師及研究生閱讀,也可供自然科學和工程技術領域的研究人員及軟件測試從業(yè)人員參考。
黨向盈,女,博士,徐州工程學院副教授。研究方向為基于搜索的軟件工程、進化算法應用和圖像處理。近年來,主持或參與省部級項目3項,主持市廳級項目4項,參與國家自然科學基金項目3項。
1 緒 論
1.1 變異測試研究現(xiàn)狀
1.2 研究內容
1.3 研究成果及意義
1.4 本書框架
1.5 進一步研究內容
1.6 本章小結
參考文獻
2 相關技術工作
2.1 變異測試
2.2 變異分支
2.3 軟件測試數(shù)據(jù)生成
2.3.1 基于結構覆蓋的測試數(shù)據(jù)生成
2.3.2 基于搜索的測試數(shù)據(jù)生成
2.4 聚類
2.5 多種群遺傳算法
2.6 本章小結
參考文獻
3 基于多種群遺傳算法的路徑覆蓋變異測試數(shù)據(jù)生成
3.1 研究動機
3.2 整體框架
3.3 變異分支構建可執(zhí)行路徑
3.3.1 基于同一被測語句變異形成新變異分支
3.3.2 基于新變異分支構建可執(zhí)行子路徑
3.3.3 基于統(tǒng)計分析構建可執(zhí)行路徑
3.4 基于路徑覆蓋的測試數(shù)據(jù)生成數(shù)學模型
3.5 基于MGA覆蓋多路徑測試數(shù)據(jù)生成
3.6 實驗
3.6.1 需要驗證的問題
3.6.2 實驗設置
3.6.3 實驗過程
3.6.4 實驗結果
3.7 本章小結
參考文獻
4 模糊聚類和進化算法增強變異測試數(shù)據(jù)生成
4.1 研究動機
4.2 整體框架
4.3 模糊聚類變異分支
4.3.1 基本定義
4.3.2 排序變異分支
4.3.3 聚類變異分支
4.4 基于分支覆蓋約束的測試數(shù)據(jù)生成多任務數(shù)學模型
4.4.1 目標函數(shù)
4.4.2 約束函數(shù)
4.4.3 數(shù)學模型
4.5 基于MGA測試數(shù)據(jù)有序生成
4.6 實驗
4.6.1 需要驗證的問題
4.6.2 實驗設置
4.6.3 實驗過程
4.6.4 實驗結果
4.7 本章小結101
參考文獻
5 基于多種群協(xié)同進化搜索域動態(tài)縮減的變異測試數(shù)據(jù)生成
5.1 研究動機
5.2 整體框架
5.3 確定頑固變異體
5.3.1 變異分支的執(zhí)行概率
5.3.2 變異分支涉及程序輸入變量的復雜度
5.3.3 綜合指標
5.4 基于路徑覆蓋約束的測試數(shù)據(jù)生成數(shù)學模型
5.4.1 目標函數(shù)ii
5.4.2 約束函數(shù)ii
5.4.3 數(shù)學模型 iii
5.5 基于CGA的搜索域動態(tài)縮減測試數(shù)據(jù)生成
5.5.1 算法描述
5.5.2 搜索域縮減時機
5.5.3 搜索域縮減策略
5.6 實驗
5.6.1 需要驗證的問題
5.6.2 實驗設置
5.6.3 實驗過程
5.6.4 實驗結果
5.7 本章小結
參考文獻
6 基于程序輸入分組變異分支的測試數(shù)據(jù)進化生成
6.1 研究動機
6.2 整體框架
6.3 基于程序輸入分組變異分支
6.3.1 變異分支與輸入變量之間的相關性
6.3.2 分組變異分支
6.4 基于相關輸入變量的測試數(shù)據(jù)生成數(shù)學模型
6.5 基于MGA多任務測試數(shù)據(jù)生成
6.6 實驗
6.6.1 需要驗證的問題
6.6.2 實驗設置
6.6.3 實驗過程
6.6.4 實驗結果
6.7 本章小結
參考文獻
7 并行程序的變異測試數(shù)據(jù)進化生成
7.1 研究動機
7.2 整體框架
7.3 并行程序的變異測試問題轉化
7.3.1 基本概念
7.3.2 并行程序變異分支的相關度
7.3.3 并行程序變異分支覆蓋難度
7.3.4 生成可執(zhí)行路徑集合
7.4 覆蓋多路徑測試數(shù)據(jù)生成的數(shù)學模型
7.5 基于MGA生成覆蓋并行程序多路徑測試數(shù)據(jù)
7.6 實驗
7.6.1 需要驗證的問題
7.6.2 實驗設置
7.6.3 實驗過程
7.6.4 實驗結果
7.7 本章小結
參考文獻
8 測試環(huán)境配置
8.1 SIR測試目標
8.2 并行程序實驗配置
8.2.1 消息傳遞接口
8.2.2 運行平臺
參考文獻
附錄