基于集合進(jìn)化與占優(yōu)關(guān)系的變異測試用例生成
本文關(guān)鍵詞: 軟件測試 變異測試 測試用例生成 變異分支 集合進(jìn)化 占優(yōu)關(guān)系 占優(yōu)度 出處:《中國礦業(yè)大學(xué)》2017年博士論文 論文類型:學(xué)位論文
【摘要】:軟件測試用于檢測軟件中可能存在的缺陷,從而改善軟件質(zhì)量。軟件測試的一個核心問題是生成高質(zhì)量的測試用例集,從而檢測軟件中的缺陷。作為一種面向缺陷的測試技術(shù),變異測試不僅能有效評價現(xiàn)有測試用例集的質(zhì)量,也能輔助生成高質(zhì)量的測試用例集,其準(zhǔn)則是殺死一定數(shù)量的變異體。然而,為數(shù)眾多的變異體導(dǎo)致高昂的測試代價,嚴(yán)重影響這一技術(shù)在實際測試中的廣泛應(yīng)用。已有的基于變異測試的測試用例生成方法,其效率十分低下,因此,研究新的測試用例生成方法是非常必要的。通過約簡變異體數(shù)量,也非常有助于提高測試用例的生成效率。本文基于變異測試研究新的測試用例生成方法,以高效生成具有很高缺陷檢測能力的測試用例集。首先,針對變異測試用例生成問題,提出基于集合進(jìn)化的測試用例生成方法。所提方法首先基于弱變異測試轉(zhuǎn)化方法,將變異前后的語句組合成能夠反映殺死對應(yīng)變異體的必要性條件,并利用組合后的條件語句構(gòu)建變異分支。因此,覆蓋變異分支真分支的測試用例集,能夠以弱變異測試準(zhǔn)則殺死對應(yīng)的變異體。然后,將所有變異分支集成到原程序中,形成新的被測程序,從而將殺死變異體的變異測試問題,轉(zhuǎn)化為覆蓋變異分支真分支的分支覆蓋測試問題。接著,基于轉(zhuǎn)化后的新程序,建立新的測試用例生成問題的數(shù)學(xué)模型,對該模型的一次求解,能夠生成殺死所有變異體的測試用例集。最后,在利用集合進(jìn)化方法求解上述模型時,設(shè)計具有針對性的適應(yīng)度函數(shù)和進(jìn)化策略。所提方法能夠顯著降低基于變異測試的測試用例生成成本。然后,轉(zhuǎn)化后的新程序中集成了為數(shù)眾多的變異分支,顯著增加了轉(zhuǎn)化后新程序的復(fù)雜度,從而降低了測試用例生成的效率。針對這一問題,提出基于占優(yōu)關(guān)系的變異體約簡方法。所提方法在轉(zhuǎn)化后的新程序中,分析變異分支之間的占優(yōu)關(guān)系,由于覆蓋非被占優(yōu)變異分支的測試用例集,也能夠覆蓋被占優(yōu)變異分支,因此,被占優(yōu)變異分支對應(yīng)的變異體是冗余的,而非被占優(yōu)變異分支對應(yīng)的變異體則是約簡后的變異體。在分析非被占優(yōu)變異分支時,構(gòu)建占優(yōu)關(guān)系圖,并利用圖中入度為0的頂點(diǎn),識別非被占優(yōu)變異分支。由于僅需覆蓋非被占優(yōu)變異分支,生成的測試用例集就能夠以弱變異測試準(zhǔn)則殺死所有變異體,因此,所提方法能夠約簡變異體數(shù)量,從而提高測試用例的生成效率。接著,為了提高分析占優(yōu)關(guān)系的效率,增強(qiáng)基于占優(yōu)關(guān)系約簡變異體方法的實用性,提出統(tǒng)計占優(yōu)分析方法。所提方法通過建立統(tǒng)計分析模型,利用測試用例集自動檢測新程序中變異分支之間的占優(yōu)關(guān)系,并構(gòu)建占優(yōu)關(guān)系圖。根據(jù)占優(yōu)關(guān)系圖中入度為0的頂點(diǎn),得到非被占優(yōu)變異分支,其對應(yīng)的變異體就是約簡后的變異體。所提方法能夠自動檢測占優(yōu)關(guān)系,從而有效約簡變異體。最后,研究表明具有優(yōu)先級排序的測試用例集,使得缺陷檢測能力強(qiáng)的測試用例能夠優(yōu)先執(zhí)行,從而降低實際軟件測試中缺陷檢測的成本。鑒于此,提出基于占優(yōu)度的測試用例生成方法。所提方法提出占優(yōu)度的概念,以確定非被占優(yōu)變異分支的順序,占優(yōu)度在數(shù)值上等于非被占優(yōu)變異分支占優(yōu)的變異分支數(shù)量,即占優(yōu)圖中對應(yīng)頂點(diǎn)的出度;并基于占優(yōu)度提出兩種策略,以選擇非被占優(yōu)變異分支,優(yōu)先生成缺陷檢測能力強(qiáng)的測試用例。此外,針對建立的測試用例生成問題的數(shù)學(xué)模型,設(shè)計和實現(xiàn)了集合進(jìn)化測試用例生成的原型系統(tǒng),并詳細(xì)介紹該系統(tǒng)的使用方法。本文研究成果豐富了變異測試?yán)碚?降低了變異測試的成本,提高了測試用例的生成效率。
[Abstract]:Software testing for possible defect detection software, thus improving the quality of software. One of the core issues of software testing is to generate test cases with high quality, so as to detect defects in the software. As a kind of defect oriented testing technology, not only can effectively evaluate the quality variation test of existing test suite, the test case is can generate high quality set, its principle is to kill a certain number of variants. However, lead to high cost of testing for a number of variants, extensive application of this technology in the practical test has been seriously affected. Some test case generation method based on mutation testing, its efficiency is very low, therefore, the method of test case study on the new generation is necessary. Through the reduction of number of variants, also helps to improve the efficiency of test generation. Based on the variation of study to test new measurement Test case generation method, test case generation, has very high detection ability set. Firstly, aiming at the problem of mutation testing case generation, put forward the method of test case generation set. Based on the evolution of the proposed method based on weak mutation testing transformation method, variation before and after the statements together can reflect the necessary conditions of the corresponding kill variants, and the use of conditional statements after the combination of construction branch variation. Therefore, test cases covering the variant branch branch really set, to kill the weak mutation testing criteria. Then the variants, are integrated into the original program branch variation, the formation of the new program to be measured, which will kill the mutation testing problem variants the transformation for branch coverage branch coverage branch variation really test problem. Then, the new program transformation based on the mathematical modeling of the test case generation of new problems For a time, the solution of the model, can generate test cases to kill all variants of the set. Finally, in the ensemble evolution method solving the model, the design of targeted fitness function and evolution strategy. The proposed method can significantly reduce the cost of test case generation based on mutation testing. Then, the new program transformation after the integration of the branch number variation, significantly increases the complexity of the transformed new program, thereby reducing the efficiency of test case generation. To solve this problem, proposed variants of the dominant relationship reduction method. Based on the new program in the modified method, analysis of variation between the dominant branch the relationship, because the coverage is non dominant variation branch of the test case set, can also be covered by the dominant variation of branches, therefore, is the dominant branch variation corresponding variants are redundant, rather than being dominant mutation Variant branch is the corresponding variant after reduction. In the analysis of non dominant mutation branches, construct dominance relationship graph, and use the graph degree of 0 vertices, identification of non dominated variation. Because only non branch coverage is the dominant mutation branch, test case generation set to weak mutation testing criteria kill all variants, therefore, the proposed method can reduce the number of variants, so as to improve the efficiency of test generation. Then, in order to improve the efficiency of the dominant relationship, enhance the practicability of the dominant relationship reduction method based on the statistic variant, dominance analysis method. The proposed method by establishing statistical analysis model, using the test suite of variation the new branch program in automatic detection of dominance relations, and construct the dominant relationship diagram. According to the diagram of 0 dominant degree vertices, non dominant variation was the branch. The corresponding variant variant is after the reduction. The proposed method can automatically detect the dominant relationship, thus effectively reduction variants. Finally, research shows that the test cases with the priority set, the defect detection capability of test cases can give priority to the implementation of strong, thereby reducing the defects of low detection cost in the actual software testing. In view of this, put forward the test test case generation method based on dominance probability. The proposed method put forward the concept of dominant degree, to determine the non dominant branch variation order of dominance degree is equal in value to the non variation branch number of dominant branch variation of dominant, the dominant figure in the corresponding vertex degree; and based on the proposed two dominant strategy. To select the non dominated variation branch, test case generation preferred detection ability strong. In addition, the mathematical model for the test case generation set, design and Implementation The prototype system of set up evolutionary test case generation is introduced, and the use of the system is introduced in detail. The research results enrich the theory of mutation test, reduce the cost of mutation testing, and improve the efficiency of test case generation.
【學(xué)位授予單位】:中國礦業(yè)大學(xué)
【學(xué)位級別】:博士
【學(xué)位授予年份】:2017
【分類號】:TP311.53
【相似文獻(xiàn)】
相關(guān)期刊論文 前10條
1 李留英,王戟,齊治昌;UML statecharts的測試用例生成方法[J];計算機(jī)研究與發(fā)展;2001年06期
2 路曉麗;葛瑋;陳新麗;郝克剛;;支持共享和復(fù)用的測試用例庫系統(tǒng)的設(shè)計[J];計算機(jī)科學(xué);2006年05期
3 胡珊;楊豐玉;張曄;劉琳嵐;;基于測試項抽取的測試用例復(fù)用方法[J];微電子學(xué)與計算機(jī);2010年01期
4 張德平;查日軍;;劃分測試用例選擇的風(fēng)險決策方法[J];計算機(jī)應(yīng)用研究;2010年12期
5 楊翊;陳挺;許崢;;證券軟件的測試用例設(shè)計充分性實踐[J];中國證券期貨;2012年07期
6 張智軼;陳振宇;徐寶文;楊瑞;;測試用例演化研究進(jìn)展[J];軟件學(xué)報;2013年04期
7 楊悅;秦湘河;楊永安;郭榮;;航天測控軟件測試用例標(biāo)準(zhǔn)及應(yīng)用研究[J];無線電工程;2013年09期
8 王侃,盧慶齡,彭艷麗;測試用例自動生成的鏈方法研究與實現(xiàn)[J];裝甲兵工程學(xué)院學(xué)報;2001年03期
9 李順華;測試用例管理方法探討[J];飛航導(dǎo)彈;2001年05期
10 徐仁佐,陳斌,陳波,吳閩泉,熊忠偉;構(gòu)造面向?qū)ο筌浖蓮?fù)用測試用例的模式研究[J];武漢大學(xué)學(xué)報(理學(xué)版);2003年05期
相關(guān)會議論文 前10條
1 王道堂;林春哲;張凱;;軟件測試用例構(gòu)造方法與手段[A];計算機(jī)技術(shù)在工程建設(shè)中的應(yīng)用——第十二屆全國工程建設(shè)計算機(jī)應(yīng)用學(xué)術(shù)會議論文集[C];2004年
2 李磊;曹先彬;;基于進(jìn)化的軟件測試用例生成方法[A];2005年“數(shù)字安徽”博士科技論壇論文集[C];2005年
3 徐李勤;王潔寧;;基于層次有色Petri網(wǎng)的軟件測試用例選取研究[A];全國第二屆信號處理與應(yīng)用學(xué)術(shù)會議專刊[C];2008年
4 林春哲;張凱;王道堂;;軟件測試用例設(shè)計分析[A];計算機(jī)技術(shù)在工程建設(shè)中的應(yīng)用——第十二屆全國工程建設(shè)計算機(jī)應(yīng)用學(xué)術(shù)會議論文集[C];2004年
5 張俠影;李志蜀;;一種優(yōu)化的測試用例約簡方法[A];2008'中國信息技術(shù)與應(yīng)用學(xué)術(shù)論壇論文集(一)[C];2008年
6 張德平;聶長海;徐寶文;;劃分測試用例選擇策略研究[A];第五屆中國測試學(xué)術(shù)會議論文集[C];2008年
7 郭從穎;;場景驅(qū)動測試用例設(shè)計及其測試自動化技術(shù)研究[A];中國計量協(xié)會冶金分會2008年會論文集[C];2008年
8 郭從穎;;場景驅(qū)動測試用例設(shè)計及其測試自動化技術(shù)研究[A];2008全國第十三屆自動化應(yīng)用技術(shù)學(xué)術(shù)交流會論文集[C];2008年
9 周曉燕;李兵;潘偉豐;覃葉宜;;基于錯誤傳播概率網(wǎng)絡(luò)的軟件回歸測試用例選擇[A];第五屆全國復(fù)雜網(wǎng)絡(luò)學(xué)術(shù)會議論文(摘要)匯集[C];2009年
10 萬琳;張威;馬雪雁;陳曼青;;基于路徑的測試用例自動生成技術(shù)[A];第十屆全國容錯計算學(xué)術(shù)會議論文集[C];2003年
相關(guān)重要報紙文章 前6條
1 深圳市信息無障礙研究會 戴杰;“聽”軟件的IT工程師[N];人民政協(xié)報;2014年
2 謝敏 沈雪芳 戴金龍;解決軟件測試的近憂和遠(yuǎn)慮[N];計算機(jī)世界;2005年
3 計算機(jī)世界實驗室 韓勖;撥云見日[N];計算機(jī)世界;2008年
4 《網(wǎng)絡(luò)世界》記者 鄭楠;ONF測試步伐有條不紊[N];網(wǎng)絡(luò)世界;2014年
5 ;找錯[N];計算機(jī)世界;2002年
6 信息產(chǎn)業(yè)部軟件與集成電路促進(jìn)中心 于明邋唐仕武;駛?cè)霚y試“快車道”[N];計算機(jī)世界;2007年
相關(guān)博士學(xué)位論文 前10條
1 張功杰;基于集合進(jìn)化與占優(yōu)關(guān)系的變異測試用例生成[D];中國礦業(yè)大學(xué);2017年
2 羅玲;擴(kuò)展π演算的建模、驗證與測試[D];西安電子科技大學(xué);2015年
3 王志強(qiáng);基于模糊測試的漏洞挖掘及相關(guān)攻防技術(shù)研究[D];西安電子科技大學(xué);2015年
4 涂徑玄;基于覆蓋分析的自動化錯誤定位關(guān)鍵技術(shù)研究[D];南京大學(xué);2016年
5 蘇亭;基于覆蓋準(zhǔn)則的軟件測試用例自動化生成方法的研究與實現(xiàn)[D];華東師范大學(xué);2016年
6 李麗;航天相機(jī)主控軟件測試用例自動生成技術(shù)的研究[D];中國科學(xué)院研究生院(長春光學(xué)精密機(jī)械與物理研究所);2010年
7 黃如兵;組合測試用例的自適應(yīng)隨機(jī)生成與優(yōu)先級排序方法研究[D];華中科技大學(xué);2013年
8 張娟;軟件測試中測試用例復(fù)用的研究[D];上海大學(xué);2012年
9 游亮;回歸測試用例選擇技術(shù)研究[D];華中科技大學(xué);2012年
10 謝曉東;基于模型比較的軟件測試用例生成方法研究[D];華中科技大學(xué);2007年
相關(guān)碩士學(xué)位論文 前10條
1 田春艷;基于灰色關(guān)聯(lián)逼近理想解方法的測試用例評價模型研究[D];昆明理工大學(xué);2009年
2 唐海鵬;基于Additional策略回歸測試用例優(yōu)先級排序優(yōu)化研究[D];西南大學(xué);2015年
3 陳夢云;基于圈復(fù)雜度和調(diào)用次數(shù)的測試用例排序方法[D];上海師范大學(xué);2015年
4 姚瑞超;廣東電網(wǎng)測試用例自動生成工具的研究與設(shè)計[D];華南理工大學(xué);2015年
5 張澤林;基于數(shù)據(jù)挖掘的軟件多故障定位與分析技術(shù)[D];南京理工大學(xué);2015年
6 鄒炳松;嵌入式軟件的圖形化測試用例生成系統(tǒng)設(shè)計與實現(xiàn)[D];哈爾濱工業(yè)大學(xué);2015年
7 李錦程;基于微信平臺的醫(yī)療就診系統(tǒng)設(shè)計與實現(xiàn)[D];哈爾濱工業(yè)大學(xué);2015年
8 趙群;軟件錯誤定位中的巧合正確性問題研究[D];哈爾濱工業(yè)大學(xué);2015年
9 常龍輝;Web應(yīng)用的測試用例優(yōu)化生成與優(yōu)先級技術(shù)[D];上海大學(xué);2015年
10 王令賽;基于粒子群優(yōu)化算法的測試用例生成技術(shù)研究[D];中國礦業(yè)大學(xué);2015年
,本文編號:1545263
本文鏈接:http://sikaile.net/shoufeilunwen/xxkjbs/1545263.html