軟件測試用例集約簡算法研究
定 價:¥48
中 教 價:¥28.80 (6.00折)
庫 存 數: 15
本書在滿足測試需求集的條件下,對測試用例集進行約簡,使得測試運行代價*小,從而達到節約測試成本、提高測試效率的目的。本書詳細介紹了蟻群算法、遺傳算法、改進的蟻群算法、遺傳算法和蟻群算法相融合的算法、改進的 HGS算法等約簡測試用例集的算法。本書的重點在于約簡測試用例集的同時,令所花的測試運行代價*小,且保證約簡后測試用例集的錯誤檢測能力不會降低。本書的特色在于,在對這些算法在理論上進行描述的同時,執行了嚴格的實驗來佐證結論。本書可作為高年級本科生、軟件測試方向的研究生、有興趣的青年學者的參考書。
本書圖文并茂,以實用為主,且附錄中包含6種算法的主要代碼: GA算法主要代碼、HGS算法主要代碼 、ACA算法主要代碼、TSR-ACA算法主要代碼、TSR-GAA算法主要代碼、RTSR-HGS算法主要代碼。
軟件測試是軟件開發過程中非常重要的部分。隨著軟件的規模越來越龐大,花費在軟件測試工作上的時間、人力、物力也越來越多。測試用例集的數量及每個測試用例的運行代價決定著軟件測試的成本及效率。在保證軟件測試的質量和對軟件關鍵操作進行充分測試的前提下,如何使用代價小且盡可能少的測試用例來充分測試軟件,從而降低軟件測試的成本和提高測試效率是本書研究的重點內容。解決測試用例集約簡問題的途徑有兩種,一種是進行測試用例的選擇,另一種則是采用測試用例集約簡技術。測試用例的選擇就是從原始用例集中選擇出一個測試用例子集,其能夠覆蓋所有的修改,但這種方法一般不能提供與原始測試用例集一樣的測試覆蓋度。本文主要關注的是第二種方法,即在原始用例集中,找到一個近似運行代價*小的測試用例子集,并能夠提供與原始測試用例集一樣的測試覆蓋度。為了盡量減少軟件測試的費用,我們在做測試用例集的約簡時,不僅要減少用例的個數,還必須考慮測試用例的運行代價,并且每個測試用例的運行代價是不相等的。本書分為四個部分。第一部分即第1章的緒論部分,給出概要性的介紹,第二部分是軟件測試用例集約簡的理論基礎,由第2章、第3章和第4章組成。第2章介紹了軟件測試的概念,測試用例集約簡的相關定義和術語,以及用貪心算法、HGS算法和GRE算法解決測試用例集約簡問題的步驟等第3章是以基本蟻群算法為核心展開的,在這一章中介紹了蟻群算法的思想并詳細闡述了如何用基本蟻群算法約簡測試用例集,并且分析了此算法存在的問題及如何進行改進。第4章以基本遺傳算法為基礎,介紹了遺傳算法的基本思想及原理。第三部分詳細闡述了作者提出的3種算法,由第5章至第7章組成。第5章在基本蟻群算法的基礎上,考慮了每個測試用例的運行代價,其中,每個測試用例的運行代價是不相等的,于是引人了變異因子來增加螞蟻選擇路徑的隨機性,使得蟻群既能快速找到*佳路徑,又不會限于局部*優。第5章將蟻群算法和遺傳算法進行融合,首先利用遺傳算法的快速隨機全局搜索能力生成蟻群算法的初始信息素,然后利用蟻群算法的正反饋性,快速得到約簡測試用例集的近似*優解。第6章在約簡回歸測試用例集的時候綜合考慮了測試用例的測試覆蓋度、測試運行代價和錯誤檢測能力3個因素,該算法在有效約簡回歸測試用例集的同時能保證約簡后的測試用例集的錯誤檢測能力。在第四部分為第8章,設計了一個原型系統進行仿真實驗,把作者提出的3種算法和3種經典算法進行比較,對本書提出的3種算法進行了性能評估。本書圖文并茂,以實用為主,力求能夠成為高年級本科生、軟件測試方向的研究生、有興趣的青年學者在研究相關主題時的參考書。本書受到新能源汽車與智慧交通湖北省優勢特色學科群(Hubei Superior and Distinctive Discipline Group ofNew Energy Vehicle and Smart Transportation)的資助。由于編者水平有限,缺點和錯誤在所難免,希望廣大讀者給予批評指正,對此作者深表謝意。
華麗,湖北文理學院計算機工程學院軟件工程系副教授,支部書記。有從教二十多年的教學經驗,在教學管理、教學內容的組織、教學方法的選擇、教學資源的建設、手機使用與監管矛盾等方面見解獨到、方法實用性強。
第 1章 緒論 / 11. 1 研究背景及意義 /21. 2 國內外研究現狀 / 31. 3 研究的主要內容 /5第 2章 軟件測試及測試用例集約簡技術 /72. 1 軟件測試 /82. 1. 1 軟件測試的概念 /82. 1. 2 測試用例的定義 /92. 1. 3 軟件測試的分類 /92. 1. 4 軟件測試的 目 的 /102. 1. 5 軟件測試的原則 /122. 2 測試用例集約簡的相關定義和術語 /152. 3 幾種典型的測試用例集約簡算法介紹 /172. 3. 1 貪 心 算法 /172. 3. 2 HGS算法 /192. 3. 3 GRE算法 /192. 3. 4 整數規劃算法 /222. 4 性能分析及實例研究 /24第 3章 基本蟻群算法的測試用例集約簡 /263. 1 蟻群算法的思想起源 /273. 2 蟻群算法的基本原理 /283. 3 蟻群算法及其改進 /313. 3. 1 蟻群算法框架 /323. 3. 2 蟻群算法的程序流程圖 /333. 3. 3 蟻群算法的數學模型 /333. 3. 4 蟻群算法的參數 /373. 4 蟻群算法的仿真實現 /373. 5 蟻群算法的意義及應用 /383. 5. 1 蟻群算法的意義 /383. 5. 2 蟻群算法的應用 /39第 4章 基本遺傳算法的測試用例集約簡 /424. 1 遺傳算法的思想起源 /434. 2 遺傳算法的基本原理 /454. 2. 1 遺傳算法概述 /454. 2. 2 遺傳算法的特點 /474. 2. 3 遺傳算法的基本步驟 /484. 3 遺傳算法及其改進 /534. 4 遺傳算法的應用 /56第 5章 基于變異因子的蟻群算法的測試用例集約簡 /595. 1 問題描述 /605. 2 基于變異因子的蟻群算法的測試用例集約簡算法(TSR-ACA)算法 /615. 2. 1 基本蟻群算法的求解過程 /615. 2. 2 蟻群算法中變異因子的引入 /625. 2. 3 信息素的更新 /625. 2. 4 TSR-ACA 算法中的主要參數值 /635. 2. 5 TSR-ACA 算法描述 /665. 3 仿真實驗對比 /67第 6章 基于遺傳蟻群算法的測試用例集約簡 /696. 1 問題描述 /706. 1. 1 問題定義 /706. 1. 2 問題模型 /706. 2 基于遺傳蟻群算法的測試用例集約簡算法(TSR-GAA)算法 /726. 2. 1 遺傳算法與蟻群算法融合的基本原理 /726. 2. 2 遺傳算法設計 /726. 2. 3 蟻群算法設計 /736. 2. 4 基于遺傳蟻群算法求解約簡用例集的算法步驟 /746. 3 仿真實驗對比 /76第 7章 基于 HGS算法的回歸測試用例集約簡 /787. 1 問題描述 /797. 1. 1 相關定義 /797. 1. 2 問題的提出 /807. 2 算法的參數 /817. 2. 1 測試用例的測試覆蓋度 /817. 2. 2 測試用例的測試運行代價 /817. 2. 3 測試用例的錯誤檢測能力 /817. 3 基于 HGS算法的回歸測試用例集約簡算法(RTSR-HGS)算法 /827. 3. 1 測試用例的度量值公式 /837. 3. 2 HGS算法與回歸測試用例集約簡算法的融合 /837. 4 仿真實驗對比 /84第 8章 算法的實現和性能分析工具 /858. 1 性能分析工具的開發環境 /868. 2 性能分析工具 /868. 2. 1 矩陣生成模塊 /868. 2. 2 數據編輯模塊 /898. 2. 3 算法執行模塊 /918. 2. 4 性能分析模塊 /938. 3 算法性能對比分析 /95參考文獻 /99
附錄 A GA算法主要代碼 /103
附錄 B HGS算法主要代碼 /106
附錄 C ACA算法主要代碼 /117
附錄 D TSR-ACA算法主要代碼 /125
附錄 E TSR-GAA算法主要代碼 /135
附錄 F RTSR-HGS算法主要代碼 /145