亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于遺傳算法的測試用例優(yōu)化方法

文檔序號:6523013閱讀:1791來源:國知局
一種基于遺傳算法的測試用例優(yōu)化方法
【專利摘要】本發(fā)明公開了一種基于遺傳算法的測試用例優(yōu)化方法,其特征在于:采用遺傳算法所存在的思想,通過優(yōu)化選擇測試用例,用最小的代價達到最大的覆蓋率,找到測試用例選取的有效解決策略,該方法主要包括:編碼策略和適應度函數以及測試用例群體選擇,遺傳算法策略,測試用例生成及優(yōu)化過程。現(xiàn)有的測試用例大多繁瑣且測試效率低下,耗費大量的人力物力,考慮到現(xiàn)有狀況,提出此方法針對被測軟件進行白盒測試,采用遺傳算法,根據程序的結構及測試歷史信息,計算每個測試用例的適應度,進行用例選擇,可以有效的選取必要的測試用例,提高測試效率,優(yōu)化測試效果。
【專利說明】一種基于遺傳算法的測試用例優(yōu)化方法
【技術領域】
[0001]本發(fā)明屬于計算機軟件測試【技術領域】,涉及測試過程中選取測試用例集的技術以及遺傳算法技術,用于提高測試的效率,并有效利用測試用例,是一種基于遺傳算法的測試用例優(yōu)化方法。
技術背景
[0002]隨著計算機技術和軟件技術的迅速發(fā)展,軟件質量的可靠性變得越來越重要,軟件測試作為一種提高軟件質量的可靠方式,以最少的人力、物力,盡快找出軟件中潛在的各種缺陷,通過修正這些缺陷,提高軟件產品質量,盡量減少軟件產品發(fā)布后由潛在的軟件缺陷帶來的可能的商業(yè)風險。其次,通過對測試結果的分析整理,總結開發(fā)規(guī)則,并為軟件可靠性分析提供依據。測試用例是軟件測試過程中必不可少的關鍵因素,目前,針對于測試用例的選取方式,存在著很多不同的方法,為此在保證測試質量的基礎上,本文提出了一種基于遺傳算法的測試用例優(yōu)化方法來提高測試效率。
[0003]遺傳算法是計算數學中用于解決最佳化的搜索算法,是進化算法的一種。進化算法最初是借鑒了進化生物學中的一些現(xiàn)象而發(fā)展起來的,這些現(xiàn)象包括遺傳、突變、自然選擇以及雜交等。遺傳算法通常實現(xiàn)方式為一種計算機模擬。對于一個最優(yōu)化問題,一定數量的候選解(稱為個體)的抽象表示(稱為染色體)的種群向更好的解進化。傳統(tǒng)上,解用二進制表示(即O和I的串),但也可以用其他表示方法。進化從完全隨機個體的種群開始,之后一代一代發(fā)生。在每一代中,整個種群的適應度被評價,從當前種群中隨機地選擇多個個體(基于它們的適應度),通過自然選擇和突變產生新的生命種群,該種群在算法的下一次迭代中成為當前種群。

【發(fā)明內容】

[0004]本發(fā)明要解決的技術問題是:提供一種基于遺傳算法的測試用例優(yōu)化方法。
[0005]本發(fā)明所采用的技術方案為:
一種基于遺傳算法的測試用例優(yōu)化方法,采用遺傳算法所存在的思想,通過優(yōu)化選擇測試用例,用最小的代價達到最大的覆蓋率,找到測試用例選取的有效解決策略,該方法主要包括:編碼策略和適應度函數以及測試用例群體選擇,遺傳算法策略,測試用例生成及優(yōu)化過程。
[0006]所述編碼策略和適應度函數以及測試用例群體選擇,其重點在于,編碼是遺傳算法的基礎表現(xiàn),遺傳算法不能直接處理問題空間的參數,必須把它們轉換成遺傳空間的由基因按一定結構組成的染色體或個體。這一轉換操作就叫做編碼,也可以稱作(問題的)表示(representation);進化論中的適應度,是表示某一個體對環(huán)境的適應能力,也表示該個體繁殖后代的能力。遺傳算法的適應度函數也叫評價函數,是用來判斷群體中的個體的優(yōu)劣程度的指標,它是根據所求問題的目標函數來進行評估的。
[0007]對于測試選擇問題,我們可以把一個測試用例的信息從測試歷史信息中獲取,從測試歷史信息中我們可以發(fā)現(xiàn)哪些用例執(zhí)行過,用O,I的編碼形式來進行描述,因此可以將歷史信息中的測試用例看成每一個基因編碼,如果一個程序有η個模塊,則一個測試用
例的編碼可以表現(xiàn)為Qi=[ql,q2,.....qn], q j e {0, I},如果qj=l,說明用例執(zhí)行了程序塊
aj,否則用例沒有執(zhí)行程序塊。
[0008]測試用例的使用度與發(fā)現(xiàn)程序的缺陷數以及覆蓋度有關,其計算公式可以表現(xiàn)為:F(ti) =測試覆蓋度/總體測試條目。
[0009]而對于初始用例群體選擇則采用隨機策略。
[0010]所述遺傳算法策略是一個選擇操作,交叉操作,變異操作的過程,通過選擇基于適應度的測試用例,保留適應度高的測試用例,利用單點交叉法,進行交叉策略,使兩個測試用例個體在結構位置相同處進行互換,生成新的測試用例個體,交叉之后進行的變異,采用二進制變異算法,實現(xiàn)基因碼的小概率翻轉來達到變異的目的。
[0011]所述測試用例生成及優(yōu)化過程,表現(xiàn)為:
1)通過修改后的程序代碼T'對原程序代碼T進行程序分析,確認T'相對于T所作出的修改;
2)應用遺傳算法從原測試用例P中選取與程序修改相關的測試用例P'記錄其對程序T'進行測試的信息;
3)確認測試信息覆蓋度,如覆蓋度不滿足要求,追加測試;
4)應用追加后測試用例集,對T'再次進一步進行測試,得出優(yōu)化后的測試用例。
[0012]本發(fā)明的有益效果為:
現(xiàn)有的測試用例大多繁瑣且測試效率低下,耗費大量的人力物力,考慮到現(xiàn)有狀況,提出此方法針對被測軟件進行白盒測試,采用遺傳算法,根據程序的結構及測試歷史信息,計算每個測試用例的適應度,進行用例選擇,可以有效的選取必要的測試用例,提高測試效率,優(yōu)化測試效果。
【專利附圖】

【附圖說明】
[0013]圖1為測試用例編碼圖;
圖2為基于遺傳算法的測試用例選取過程圖。
【具體實施方式】
[0014]下面參照附圖,結合實施例對本發(fā)明進行說明:
本發(fā)明實施例中主要包括:編碼策略和適應度函數以及測試用例群體選擇,遺傳算法策略,測試用例生成及優(yōu)化過程。
[0015](I)對于一個程序T,我們選取其做出修改后的程序T,,對于初始用例,我們對其進行編碼如圖1所示,每一行對應一個個體,測試的覆蓋度用于計算每個個體的適應度;
(2)利用遺傳算法從原測試用例P中選取與程序修改相關的測試用例P',其中選擇過程采用輪盤賭的選擇策略,然后利用交叉算法在兩個個體的同一位置進行交叉重組,形成兩個新個體,交叉過后采用二進制變異算法,實現(xiàn)基因碼的小概率翻轉來達到變異的目的,采用I/基因遺傳因子個數作為變異概率。選取后的P對T'進行測試,記錄測試信息;
(3)確認測試的覆蓋度,如不滿足覆蓋要求,對P'追加測試; (4)追加后的測試用例集,對T'再次進行測試,得出優(yōu)化后的測試用例,整個過程如圖2所示。
【權利要求】
1.一種基于遺傳算法的測試用例優(yōu)化方法,其特征在于:采用遺傳算法所存在的思想,通過優(yōu)化選擇測試用例,用小的代價達到大的覆蓋率,找到測試用例選取的有效解決策略,該方法包括:編碼策略和適應度函數以及測試用例群體選擇,遺傳算法策略,測試用例生成及優(yōu)化過程。
2.根據權利要求1所述的一種基于遺傳算法的測試用例優(yōu)化方法,其特征在于:所述編碼策略和適應度函數以及測試用例群體選擇,其重點在于,編碼是遺傳算法的基礎表現(xiàn),對于測試選擇問題,把一個測試用例的信息從測試歷史信息中獲取,將歷史信息中的測試用例看成每一個基因編碼,如果一個程序有η個模塊,則一個測試用例的編碼可以表現(xiàn)為Qi=[ql,q2,.....qn],qj e {O, I},如果qj=l,說明用例執(zhí)行了程序塊aj,否則用例沒有執(zhí)行程序塊。
3.根據權利要求2所述的一種基于遺傳算法的測試用例優(yōu)化方法,其特征在于:測試用例的使用度與發(fā)現(xiàn)程序的缺陷數以及覆蓋度有關,其計算公式表現(xiàn)為:F(ti) =測試覆蓋度/總體測試條目。
4.根據權利要求2所述的一種基于遺傳算法的測試用例優(yōu)化方法,其特征在于:對于初始用例群體選擇采用隨機策略。
5.根據權利要求1-4任一所述的一種基于遺傳算法的測試用例優(yōu)化方法,其特征在于:所述遺傳算法策略是一個選擇操作,交叉操作,變異操作的過程,通過選擇基于適應度的測試用例,保留適應度高的測試用例,利用單點交叉法,進行交叉策略,使兩個測試用例個體在結構位置相同處進行互換,生成新的測試用例個體,交叉之后進行的變異,采用二進制變異算法,實現(xiàn)基因碼的小概率翻轉來達到變異的目的。
6.根據權利要求5所述的一種基于遺傳算法的測試用例優(yōu)化方法,其特征在于:所述測試用例生成及優(yōu)化過程,表現(xiàn)為: 1)通過修改后的程序代碼T'對原程序代碼T進行程序分析,確認T'相對于T所作出的修改; 2)應用遺傳算法從原測試用例P中選取與程序修改相關的測試用例P'記錄其對程序T'進行測試的信息; 3)確認測試信息覆蓋度,如覆蓋度不滿足要求,追加測試; 4)應用追加后測試用例集,對T'再次進一步進行測試,得出優(yōu)化后的測試用例。
【文檔編號】G06F11/36GK103605611SQ201310663974
【公開日】2014年2月26日 申請日期:2013年12月10日 優(yōu)先權日:2013年12月10日
【發(fā)明者】劉晶, 侯德龍, 黃敏 申請人:浪潮電子信息產業(yè)股份有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1