[發明專利]一種基于改進的灰色預測演化算法的測試用例生成方法有效
| 申請號: | 202110586812.9 | 申請日: | 2021-05-27 |
| 公開(公告)號: | CN113468044B | 公開(公告)日: | 2022-06-24 |
| 發明(設計)人: | 蘇清華;蔡高成;吳海濤;楊先山;李麗萍 | 申請(專利權)人: | 長江大學 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 武漢藍寶石專利代理事務所(特殊普通合伙) 42242 | 代理人: | 嚴超 |
| 地址: | 434000*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 改進 灰色 預測 演化 算法 測試 生成 方法 | ||
1.一種基于改進的灰色預測演化算法的測試用例生成方法,其特征在于,包括以下步驟:
S1,對被測程序進行靜態分析,得到被測程序的目標路徑集和靜態結構信息;
S2,基于所述目標路徑集和靜態結構信息,執行GPE-ISS算法產生新的測試用例集;包括:
S201,基于所述目標路徑集和靜態結構信息,確定GPE-ISS算法的輸入域和算法終止條件,所述算法終止條件為實現所述目標路徑集的100%路徑覆蓋率或達到給定的測試用例數的最大值;
S202,在前三次迭代中,每次迭代都執行初始化操作隨機生成一個測試用例集,所述測試用例集包括完整的一個初始化種群,種群的每一個個體表示一個測試用例,種群X的第i個個體表示為其中D為變量的維數,N為種群大小,G為最大代數,則第g代的第i個個體的第j維可以通過下式得到:
其中,rand(0,1)為均勻分布在范圍為[0,1]內產生的隨機數;Upj、Lowj分別表示第j維的上界和下界;
S203,在第四次以后的迭代中,將連續前三代的種群序列視為一個時間序列,在這三代種群序列的基礎上,構造一個指數函數來預測下一代種群,方法如下:
從連續的3個種群Xg-2,Xg-1,Xg中分別隨機選取1個個體,記為xr1,xr2,xr3,則有d12=|xr1,j-xr2,j|,d13=|xr1,j-xr3,j|,d23=|xr2,j-xr3,j|,Maxdr=max{d12,d23,d13},Mindr=min{d12,d23,d13},其中,d12、d13和d23分別表示xr1,j-xr2,j、xr1,j-xr3,j和xr2,j-xr3,j的絕對值,Maxdr和Mindr分別表示d12、d13、d23中的最大值和最小值;
通過以下公式得到試驗種群Ug的第i個個體的第j維度的值:
其中,γ是控制預報的閾值;w、a、b分別表示干擾系數、灰色發展系數、灰色控制參數;rand(0,1)表示從均勻分布中采樣的隨機數,其范圍為[0,1];
S204,依次對的每個維度進行探索,設在第j維探索中一共有m次迭代,在第t次迭代中,根據一個自適應搜索步長sj生成兩個候選測試用例v1,v2,包括:
sj=(Upj-Lowj)·0.5t,t=1,2,...,m;
基于二分查找的思想,sj會從sj=(Upj-Lowj)·0.5迭代性減少到一個預設的閾值,即經過m次迭代后,sj等于預設的閾值;除了第j維外,v1,v2和的其他維度均相同;
S3,將生成的新的測試用例集作為被測程序的輸入數據,以驅動被測程序運行;
S4,記錄被測程序的運行結果,并使用運行結果更新路徑覆蓋信息;
S5,計算測試用例的適應度函數值,從當前迭代產生的測試用例和上一次迭代保留下來的測試用例中選取適應度函數值最優的測試用例進入下一輪的迭代;
S6,重復執行S2-S5,直到迭代算法滿足終止條件。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于長江大學,未經長江大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110586812.9/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種線路接線試驗箱
- 下一篇:具有填充程度監測的制冷系統





