[發明專利]基于多目標差異演化算法的軟件測試資源動態分配方法有效
| 申請號: | 201510320713.0 | 申請日: | 2015-06-10 |
| 公開(公告)號: | CN104899101B | 公開(公告)日: | 2021-05-11 |
| 發明(設計)人: | 張國富;蘇兆品;岳峰;齊美彬;蔣建國;王永奇 | 申請(專利權)人: | 合肥工業大學 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50;G06F11/36 |
| 代理公司: | 安徽合肥華信知識產權代理有限公司 34112 | 代理人: | 余成俊 |
| 地址: | 230009 *** | 國省代碼: | 安徽;34 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 多目標 差異 演化 算法 軟件 測試 資源 動態分配 方法 | ||
本發明公開了一種基于多目標差異演化算法的軟件測試資源動態分配方法,可應用于串并聯軟件系統的模塊化測試。它是針對目前測試資源分配方法不考慮隨著測試進程發生變化而導致資源浪費的情況。該方法包括步驟:S1,為可行解編碼;S2,測試階段劃分;S3,控制參數設置;S4,初始化種群;S5,變異操作;S6,交叉操作;S7,基于非支配排序的選擇操作;S8,判斷是否達到最大迭代次數,若否,則跳到S5;若是,則跳到S9;S9,為pareto解解碼;S10,判斷是否還存在未進行的測試階段,若否,則結束求解過程;若存在,跳到S11;S11,更新下一測試階段的測試資源,跳到S4,進入下一測試階段。
技術領域
本發明涉及軟件測試方法領域,具體是一種基于多目標差異演化算法的軟件測試資源動態分配方法。
背景技術
隨著軟件系統的廣泛應用,軟件復雜度不斷提高,包括的模塊越多。在測試過程中,每個模塊都需要經過測試。特別是在軟件的單元測試中,不同模塊的測試活動都在激烈爭奪有限的測試資源,不同的測試活動也會帶來不同的成本的上升與可靠性的增加。軟件工程師必須清楚如何將測試資源分配給不同的模塊測試。測試資源分配問題就是如何把有限的測試資源分配給每一個模塊,從而保證軟件系統的可靠性最大。
測試資源分配問題是系統可靠性優化中的關鍵和重要問題。自二十世紀九十年代以來,已經成為研究的熱點問題。目前的研究大都是基于測試代價、系統可靠性、測試資源為核心的多目標優化問題。
但是已有的測試資源分配模型和分配方法均屬于靜態分配測試資源的方法,即根據系統初始時刻各模塊的可靠性進行測試資源的分配,很少考慮各模塊可靠性隨著測試進程發生變化的情況。這些模型和方法的缺點是會造成測試資源大量浪費在可靠性已經很高、不在需要測試資源的模塊上,導致在測試完成后,有些模塊的可靠性遠遠低于系統的可靠性,使軟件測試的效果不佳。
發明內容
本發明的目的是提供一種基于多目標差異演化算法的軟件測試資源動態分配方法,以解決現有技術軟件測試資源分配方案因不考慮各模塊可靠性隨著測試進程發生變化的情況而導致測試資源浪費、測試效果差的問題。
為了達到上述目的,本發明所采用的技術方案為:
基于多目標差異演化算法的軟件測試資源動態分配方法,其特征在于:包括以下步驟:
(1)、對所求問題進行分析,為可行解設計編碼方法;
(2)、對整個測試環節進行劃分,劃分為若干個測試階段;
(3)、對差異演化算法中的種群規模、迭代次數、交叉概率、變異概率等控制參數進行設置;
(4)、對種群進行初始化操作;
(5)、對種群中的個體進行變異操作;
(6)、對變異生成的個體與原種群中的個體進行交叉操作;
(7)、采用非支配排序機制進行選擇操作;
(8)、判斷是否達到最大迭代次數,若否,則跳到步驟(5),繼續進化操作;若是,則跳到步驟(9);
(9)、對pareto解進行解碼;
(10)、判斷是否還存在未進行的測試階段,若存在,跳到步驟(11);若否,則結束求解過程;
(11)、更新下一測試階段的測試資源,跳到步驟(4),進入下一測試階段。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于合肥工業大學,未經合肥工業大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510320713.0/2.html,轉載請聲明來源鉆瓜專利網。





