測(cè)試集規(guī)模、測(cè)試覆蓋率和測(cè)試有效性之間關(guān)聯(lián)性研究
發(fā)布時(shí)間:2020-06-21 01:10
【摘要】:軟件測(cè)試技術(shù)是保障軟件質(zhì)量的重要途徑之一。測(cè)試覆蓋率主要用來(lái)度量源代碼被覆蓋的程度,測(cè)試覆蓋率越高表示更多的源代碼在測(cè)試期間被執(zhí)行。之前的研究人員主要將測(cè)試覆蓋率作為評(píng)價(jià)測(cè)試質(zhì)量的標(biāo)準(zhǔn),認(rèn)為測(cè)試覆蓋率和測(cè)試集缺陷檢錯(cuò)能力呈正相關(guān)。然而,最新的研究在表明覆蓋率不能客觀(guān)地評(píng)估測(cè)試集缺陷檢測(cè)能力的同時(shí),發(fā)現(xiàn)測(cè)試集規(guī)模和覆蓋率之間存在高度的相關(guān)性。由此,衍生的研究問(wèn)題是:測(cè)試集規(guī)模、測(cè)試覆蓋率和測(cè)試有效性之間存在什么關(guān)系?為了研究這三者之間的關(guān)系,本文提出了一種新的測(cè)試用例選取算法,使得每個(gè)測(cè)試用例被選中的概率幾乎相同。并且將Defects4j數(shù)據(jù)集中6個(gè)使用率高且開(kāi)源的項(xiàng)目作為實(shí)驗(yàn)對(duì)象,通過(guò)編程來(lái)生成以測(cè)試方法和斷言?xún)煞N粒度的測(cè)試用例集,對(duì)三者關(guān)系進(jìn)行大量、深入的實(shí)證研究。本文主要研究工作包括:(1)研究測(cè)試覆蓋率是否受到測(cè)試集中測(cè)試用例數(shù)量的影響,實(shí)驗(yàn)結(jié)果表明測(cè)試集規(guī)模越大,測(cè)試覆蓋率越高,即兩者在統(tǒng)計(jì)學(xué)上是正相關(guān)的。(2)研究測(cè)試有效性是否受到測(cè)試集中測(cè)試用例數(shù)量的影響,實(shí)驗(yàn)結(jié)果表明測(cè)試集規(guī)模越大,測(cè)試有效性越高,即兩者在統(tǒng)計(jì)學(xué)上是正相關(guān)的。(3)研究測(cè)試覆蓋率和測(cè)試有效性的關(guān)系,利用基于線(xiàn)性回歸的混和效應(yīng)模型來(lái)刻畫(huà)三者之間的關(guān)系,本文發(fā)現(xiàn)在不排除測(cè)試集規(guī)模的混合效應(yīng)情況下,測(cè)試覆蓋率和測(cè)試有效性高度相關(guān);在排除測(cè)試集規(guī)模的混合效應(yīng)情況下,測(cè)試覆蓋率和測(cè)試有效性之間已無(wú)顯著關(guān)聯(lián)。
【學(xué)位授予單位】:南京郵電大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2018
【分類(lèi)號(hào)】:TP311.53
【圖文】:
語(yǔ)句覆蓋(Statement Coverage)表示度量是目前最常見(jiàn)也是最常用的一種覆蓋方式。行相同的含義,可以選擇其中任意一種表示。在和有效代碼行,可執(zhí)行語(yǔ)句具體含義就是前面行代碼行里的。語(yǔ)句覆蓋雖說(shuō)普遍但確實(shí)是覆頭不是空穴來(lái)風(fēng),因?yàn)樗耆辉诤醴种l件被執(zhí)行被覆蓋了。這樣的結(jié)果就是很難發(fā)現(xiàn)代人意。語(yǔ)句覆蓋是指在測(cè)試中,首先測(cè)試集中有的方法時(shí),查看被測(cè)程序中的被執(zhí)行的語(yǔ)句。= 至少被執(zhí)行語(yǔ)句覆蓋率可執(zhí)行在圖 2.1 示例中,如果我們選擇測(cè)試用例,這樣被測(cè)程序中的 3、4、5、6 條語(yǔ)
及掌握查看 PIT 報(bào)告所需要的知識(shí)點(diǎn)。下面是在 Maven 項(xiàng)目使用 PIT 工具 Eclipse 創(chuàng)建一個(gè) Maven 項(xiàng)目。我們本次實(shí)驗(yàn)的 6 個(gè) Java 項(xiàng)目本身就是 M不需要將普通項(xiàng)目替換成 Maven 項(xiàng)目,減少了工作量。 pom.xml 文件中,將<plugin><groupId>org.pitest</groupId> <artifactId> piId> <version>LATEST</version> </plugin>代碼放入到 build/plugins 中。LAT 的版本號(hào),我們可以在 Maven 的中央倉(cāng)庫(kù)里找到最近的版本替換掉即可。情況下,Pitest 會(huì)變異項(xiàng)目中所有的代碼,可以采用 targetClasses 來(lái)限制哪用 targetTests 來(lái)限制哪些測(cè)試用例運(yùn)行,我們需要做的就是替換里面的參行 maven install 將包含指定類(lèi)的 jar 文件發(fā)布到本地倉(cāng)庫(kù)中。mavenbuild 中運(yùn)行 mvnorg.pitest:pitest-maven:mutationCoverage 命令,執(zhí)異測(cè)試結(jié)束后,在該項(xiàng)目的 pit-reports 文件中得到 PIT 報(bào)告。該報(bào)告如圖 3
本文編號(hào):2723251
【學(xué)位授予單位】:南京郵電大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2018
【分類(lèi)號(hào)】:TP311.53
【圖文】:
語(yǔ)句覆蓋(Statement Coverage)表示度量是目前最常見(jiàn)也是最常用的一種覆蓋方式。行相同的含義,可以選擇其中任意一種表示。在和有效代碼行,可執(zhí)行語(yǔ)句具體含義就是前面行代碼行里的。語(yǔ)句覆蓋雖說(shuō)普遍但確實(shí)是覆頭不是空穴來(lái)風(fēng),因?yàn)樗耆辉诤醴种l件被執(zhí)行被覆蓋了。這樣的結(jié)果就是很難發(fā)現(xiàn)代人意。語(yǔ)句覆蓋是指在測(cè)試中,首先測(cè)試集中有的方法時(shí),查看被測(cè)程序中的被執(zhí)行的語(yǔ)句。= 至少被執(zhí)行語(yǔ)句覆蓋率可執(zhí)行在圖 2.1 示例中,如果我們選擇測(cè)試用例,這樣被測(cè)程序中的 3、4、5、6 條語(yǔ)
及掌握查看 PIT 報(bào)告所需要的知識(shí)點(diǎn)。下面是在 Maven 項(xiàng)目使用 PIT 工具 Eclipse 創(chuàng)建一個(gè) Maven 項(xiàng)目。我們本次實(shí)驗(yàn)的 6 個(gè) Java 項(xiàng)目本身就是 M不需要將普通項(xiàng)目替換成 Maven 項(xiàng)目,減少了工作量。 pom.xml 文件中,將<plugin><groupId>org.pitest</groupId> <artifactId> piId> <version>LATEST</version> </plugin>代碼放入到 build/plugins 中。LAT 的版本號(hào),我們可以在 Maven 的中央倉(cāng)庫(kù)里找到最近的版本替換掉即可。情況下,Pitest 會(huì)變異項(xiàng)目中所有的代碼,可以采用 targetClasses 來(lái)限制哪用 targetTests 來(lái)限制哪些測(cè)試用例運(yùn)行,我們需要做的就是替換里面的參行 maven install 將包含指定類(lèi)的 jar 文件發(fā)布到本地倉(cāng)庫(kù)中。mavenbuild 中運(yùn)行 mvnorg.pitest:pitest-maven:mutationCoverage 命令,執(zhí)異測(cè)試結(jié)束后,在該項(xiàng)目的 pit-reports 文件中得到 PIT 報(bào)告。該報(bào)告如圖 3
【參考文獻(xiàn)】
相關(guān)期刊論文 前6條
1 張功杰;鞏敦衛(wèi);姚香娟;;基于統(tǒng)計(jì)占優(yōu)分析的變異測(cè)試[J];軟件學(xué)報(bào);2015年10期
2 楊波;吳際;徐珞;畢考;劉超;;一種軟件測(cè)試需求建模及測(cè)試用例生成方法[J];計(jì)算機(jī)學(xué)報(bào);2014年03期
3 賈冀婷;;軟件測(cè)試中可靠性模型的設(shè)計(jì)與研究[J];計(jì)算機(jī)技術(shù)與發(fā)展;2014年03期
4 李海峰;王栓奇;劉暢;鄭軍;李震;;考慮測(cè)試工作量與覆蓋率的軟件可靠性模型[J];軟件學(xué)報(bào);2013年04期
5 陳翔;顧慶;;變異測(cè)試:原理、優(yōu)化和應(yīng)用[J];計(jì)算機(jī)科學(xué)與探索;2012年12期
6 石君友;王璐;李海偉;王風(fēng)武;;基于設(shè)計(jì)特性覆蓋的測(cè)試性定量分析方法[J];系統(tǒng)工程與電子技術(shù);2012年02期
本文編號(hào):2723251
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/2723251.html
最近更新
教材專(zhuān)著