国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

Evosuite和Randoop單元測(cè)試用例生成工具覆蓋率對(duì)比分析①

2020-09-22 07:44:48楊正卉黃小丹
關(guān)鍵詞:測(cè)試用例覆蓋率分支

楊正卉,洪 玫,郭 丹,王 瀟,劉 芳,黃小丹

(四川大學(xué) 計(jì)算機(jī)學(xué)院(軟件學(xué)院),成都 610065)

1 研究背景及意義

軟件測(cè)試是發(fā)現(xiàn)軟件缺陷的過(guò)程,是保障軟件質(zhì)量的重要手段.由于被測(cè)系統(tǒng)的復(fù)雜性以及測(cè)試成本的限制,軟件測(cè)試自動(dòng)化已經(jīng)成為必然.隨著測(cè)試技術(shù)的進(jìn)一步發(fā)展,測(cè)試流程的不斷規(guī)范,大量的單元測(cè)試用例生成工具涌現(xiàn).這些工具以覆蓋率作為測(cè)試標(biāo)準(zhǔn).有研究者發(fā)現(xiàn),測(cè)試用例的覆蓋率是越高,捕獲代碼缺陷的可能性就越大.研究自動(dòng)化單元測(cè)試用例生成工具生成的測(cè)試用例的覆蓋率和檢錯(cuò)率具有重要意義,直接影響著這些測(cè)試工具是否能在業(yè)界發(fā)揮更好的作用.在國(guó)際上的一些單元測(cè)試工具競(jìng)賽中[1-6],Evosuite多次獲得第一名;在2019年的競(jìng)賽中,Randoop 工具和手工編寫的測(cè)試用例被作為其余工具對(duì)比的基線.因此,本文選擇Evosuite,Randoop 兩個(gè)具有代表性的工具為例,采用了2016年單元測(cè)試工具競(jìng)賽中使用的數(shù)據(jù)集:Defects4J,研究自動(dòng)化單元測(cè)試工具的性能,擬回答以下問(wèn)題:

(1)在不同的生成時(shí)間下,Evosuite,Randoop 生成的測(cè)試用例在數(shù)量上、方法覆蓋率、分支覆蓋率等方面的表現(xiàn)如何?

(2)哪些因素影響了Evosuite、Randoop 工具生成的測(cè)試用例的覆蓋率?

2 相關(guān)研究

為了分析自動(dòng)化測(cè)試用例生成工具的性能,Fraser等進(jìn)行了手工測(cè)試和自動(dòng)化測(cè)試的對(duì)比實(shí)驗(yàn),邀請(qǐng)49 名參與者,從多個(gè)方面分析了手工測(cè)試用例和自動(dòng)化工具Evosuite 所生成的測(cè)試用例的特定[7].Shamshiri等在Defects4J 數(shù)據(jù)集上研究了Evosuite、Randoop 工具,以及商用工具AgitarOne 的性能,回答了如何使自動(dòng)化單元測(cè)試工具能夠查找到更多的缺陷的問(wèn)題[8].Almasi 等使用工業(yè)界的項(xiàng)目——LifeCalc 對(duì)Evosuite和Randoop 工具的有效性進(jìn)行了評(píng)估[9].Kotelyanskii等對(duì)基于搜索的單元測(cè)試用例工具Evosuite 的參數(shù)調(diào)優(yōu)進(jìn)行了研究,其研究結(jié)果為本文提供了參考[10].在這些研究中,主要關(guān)注的是工具的缺陷查找能力,但作為自動(dòng)化單元測(cè)試,更重要的是其對(duì)代碼的覆蓋能力,David Schuler 確定了覆蓋率是判斷測(cè)試用例質(zhì)量的一個(gè)可靠指標(biāo),覆蓋率越高,缺陷查找率可能越高[11].本文詳細(xì)分析了工具生成的測(cè)試用例對(duì)源代碼的方法和分支的覆蓋率,進(jìn)一步探索了工具的特點(diǎn)和存在的缺陷.

3 實(shí)驗(yàn)方法

為了回答上述研究問(wèn)題,本文設(shè)計(jì)了比較實(shí)驗(yàn),實(shí)驗(yàn)過(guò)程如圖1所示.應(yīng)用自動(dòng)化單元測(cè)試用例生成工具Evosuite 和Randoop,在Defects4J 數(shù)據(jù)集上,針對(duì)不同的被測(cè)軟件,分別生成測(cè)試用例.工具生成測(cè)試用例的時(shí)間分別設(shè)置為10 s,20 s,30 s,60 s,120 s,180 s,300 s.由于Evosuite 和Randoop 都是隨機(jī)生成測(cè)試用例,每次產(chǎn)生的結(jié)果有一定隨機(jī)性.因此,在實(shí)驗(yàn)設(shè)計(jì)上,同一生成時(shí)間重復(fù)運(yùn)行Evosuite 和Randoop 3 次,并以3 次運(yùn)行結(jié)果的平均值作為實(shí)驗(yàn)分析數(shù)據(jù).

3.1 Randoop 和Evosuite 工具

Randoop[12]是基于反饋的面向?qū)ο髥卧獪y(cè)試的隨機(jī)測(cè)試用例生成工具,對(duì)于被測(cè)類,Randoop 創(chuàng)建一系列方法調(diào)用和構(gòu)造函數(shù),依次創(chuàng)建和更改對(duì)象狀態(tài).執(zhí)行所有創(chuàng)建的序列,并用執(zhí)行的生成來(lái)創(chuàng)建捕獲系統(tǒng)行為的斷言.Randoop 的輸入是一組要測(cè)試的Java 類,一個(gè)時(shí)間限制和一組可選的規(guī)范檢查器,生成是一組對(duì)應(yīng)的JUnit 測(cè)試用例.Randoop 的隨機(jī)種子在缺省情況下為0,對(duì)于相同被測(cè)類,每次運(yùn)行時(shí)需更改隨機(jī)種子的值.另外,Randoop 工具在生成過(guò)程中易產(chǎn)生片狀測(cè)試,導(dǎo)致Randoop 工具無(wú)法生成更多的測(cè)試用例.為了解決該問(wèn)題,需將flaky-test-behavior 參數(shù)設(shè)置為OUTPUT.

Evosuite[13]是基于搜索的單元測(cè)試用例生成工具,該工具被集成于Eclipse,IntelliJ,Maven 等環(huán)境下,可以生成Java 類的JUnit 測(cè)試用例.該工具采用遺傳算法,從一組隨機(jī)測(cè)試用例開(kāi)始,迭代地應(yīng)用選擇、突變和交叉等搜索操作符來(lái)進(jìn)化測(cè)試用例,進(jìn)化由基于覆蓋標(biāo)準(zhǔn)的適應(yīng)度函數(shù)指導(dǎo),一旦搜索結(jié)束,測(cè)試用例就會(huì)被最小化,并添加測(cè)試斷言.在本實(shí)驗(yàn)中,除了禁止Evosuite 使用單獨(dú)的類加載器,更改生成時(shí)間以外,其余均采用默認(rèn)配置.

圖1 實(shí)驗(yàn)過(guò)程設(shè)計(jì)

3.2 被測(cè)軟件

實(shí)驗(yàn)被測(cè)軟件采用Defects4j 數(shù)據(jù)集[14]中的5 個(gè)開(kāi)源項(xiàng)目的多個(gè)版本.這些項(xiàng)目版本中有357 個(gè)真實(shí)缺陷:JFreeChart (26 個(gè)缺陷)、Google Closure compiler(133 個(gè)缺陷)、Apache Commons Lang (65 個(gè)缺陷)、Apache Commons Math (106 個(gè)缺陷) 和Joda Time(27 個(gè)缺陷).Apache Commons Lang 是處理Java 基本類方法的工具類包,彌補(bǔ)了Java.Lang API 基本處理方法上的不足;Apache Commons Math 是輕量級(jí)自容器的數(shù)學(xué)和統(tǒng)計(jì)計(jì)算方法類包,包含大多數(shù)常用的數(shù)值算法,外部依賴較少.JFreeChart 是為Applications,Applets,Servlets 以及JSP 等使用所設(shè)計(jì)的,可生成多種圖表,產(chǎn)生PNG 和JPEG 格式的生成.對(duì)于項(xiàng)目版本的每一個(gè)缺陷,Defects4j 提供了:(1)該缺陷對(duì)應(yīng)的缺陷版本和已修復(fù)版本;(2)開(kāi)發(fā)人員手工編寫的可以揭露缺陷的測(cè)試用例;(3)缺陷類的列表.

本實(shí)驗(yàn)選擇JFreeChart,Apache Commons Lang,Apache Commons Math 作為被測(cè)軟件,既滿足了多樣性的需求,也保證了所選擇的軟件的代表性.實(shí)驗(yàn)將3 個(gè)軟件每個(gè)版本中已修復(fù)缺陷的類作為被測(cè)類.當(dāng)某個(gè)類在缺陷類列表中多次出現(xiàn)時(shí),使用該類第一次出現(xiàn)缺陷時(shí)對(duì)應(yīng)的已修復(fù)版本.本實(shí)驗(yàn)共篩選出71 個(gè)被測(cè)類.

3.3 實(shí)驗(yàn)環(huán)境

本實(shí)驗(yàn)在Windows 64 位操作系統(tǒng)下采用SUN Java 8 SE,Eclipse Europa IDE 編譯被測(cè)項(xiàng)目.在JUnit 4 框架下運(yùn)行測(cè)試用例,使用EclEmma 插件計(jì)算測(cè)試用例覆蓋率.編程自動(dòng)統(tǒng)計(jì)覆蓋率結(jié)果,并采用Excel工具對(duì)結(jié)果進(jìn)行分析.

3.4 實(shí)驗(yàn)步驟

(1)編譯被測(cè)類

Apache Commons Lang 和Apache Commons Math是Maven 構(gòu)建的項(xiàng)目,編譯該項(xiàng)目時(shí),需確保Eclipse中已配置Maven 環(huán)境.

(2)測(cè)試用例生成

在命令行中使用Evosuite-1.0.5.jar 和Randoop-4.0.4 生成測(cè)試用例.在生成測(cè)試用例時(shí),生成時(shí)間設(shè)為:10 s,20 s,30 s,60 s,120 s,180 s,300 s.Evosuite 和Randoop 工具分別在每個(gè)生成時(shí)間下運(yùn)行3 次.每次運(yùn)行時(shí),Evosuite 參數(shù)保持不變.Randoop 隨機(jī)種子分別設(shè)置為123,234,456,其余參數(shù)保持不變.

(3)測(cè)試用例執(zhí)行與覆蓋率計(jì)算

測(cè)試用例在Eclipse 中使用JUnit 4 框架分別執(zhí)行.測(cè)試覆蓋率由eclEMMA 插件統(tǒng)計(jì),結(jié)果在測(cè)試用例執(zhí)行結(jié)束后得到.Randoop 生成的測(cè)試用例分為回歸測(cè)試用例和揭錯(cuò)測(cè)試用例,這兩種測(cè)試用例都應(yīng)被執(zhí)行.考慮測(cè)試的穩(wěn)定性,若測(cè)試用例不能執(zhí)行或執(zhí)行中斷,則丟棄該測(cè)試用例.

本實(shí)驗(yàn)從以下幾個(gè)角度統(tǒng)計(jì)覆蓋率結(jié)果:

① 以類為單位,統(tǒng)計(jì)Evosuite 和Randoop 測(cè)試用例對(duì)被測(cè)類的方法覆蓋率和分支覆蓋率.

② 以方法為單位,統(tǒng)計(jì)Evosuite 和Randoop 測(cè)試用例在每個(gè)方法中的分支覆蓋率.

(4)實(shí)驗(yàn)結(jié)果處理

實(shí)驗(yàn)中存在無(wú)法生成測(cè)試用例或測(cè)試用例無(wú)法正常運(yùn)行的情況,比如個(gè)別類或者方法不存在分支,此時(shí)默認(rèn)分支覆蓋率為100%.

4 實(shí)驗(yàn)結(jié)果及分析

4.1 Evosuite 和Randoop 生成測(cè)試用例的數(shù)量、方法覆蓋率、分支覆蓋率

(1) Evosuite 和Randoop 工具生成的測(cè)試用例數(shù)量.

圖2展示了Evosuite 和Randoop 工具生成的測(cè)試用例數(shù)量與生成時(shí)間的關(guān)系.無(wú)論生成時(shí)間如何設(shè)置,Evosuite 工具生成的測(cè)試用例數(shù)量相對(duì)穩(wěn)定.Randoop工具生成的測(cè)試用例數(shù)量隨著生成時(shí)間的增加而增加.當(dāng)生成時(shí)間為60 s 時(shí),明顯看出Randoop 測(cè)試用例數(shù)量多于Evosuite.圖3展示了在不同項(xiàng)目中 Evosuite和Randoop 生成的測(cè)試用例數(shù)量對(duì)比,當(dāng)生成時(shí)間為10 s,20 s 時(shí),Randoop 生成的測(cè)試用例數(shù)量依舊高于Evosuite.因此在所有生成時(shí)間設(shè)置下,Randoop 工具生成的測(cè)試用例數(shù)量都多于Evosuite.因?yàn)镋vosuite 工具會(huì)對(duì)生成的測(cè)試用例進(jìn)行最小化操作,保留符合覆蓋率標(biāo)準(zhǔn)的測(cè)試用例.而Randoop 工具則輸出生成的所有測(cè)試用例.

(2) Evosuite 和Randoop 工具生成的測(cè)試用例的方法覆蓋率.

圖4展示了Evosuite 和Randoop 工具生成測(cè)試用例對(duì)被測(cè)類的方法覆蓋率與分支覆蓋率.在3 個(gè)被測(cè)軟件中,Evosuite 測(cè)試用例的方法覆蓋率隨著生成時(shí)間的增加而增加.Randoop 測(cè)試用例的方法覆蓋率在生成時(shí)間為10~120 s 時(shí)存在遞增現(xiàn)象,并在120 s 時(shí)達(dá)到最大值.在Chart 項(xiàng)目中,當(dāng)生成時(shí)間為300 s 時(shí),Randoop 測(cè)試用例的方法覆蓋率有所降低;在Lang 項(xiàng)目上,當(dāng)生成時(shí)間超過(guò)120 s 后,Randoop 測(cè)試用例的方法覆蓋率保持平穩(wěn);對(duì)于Math 項(xiàng)目,當(dāng)生成時(shí)間超過(guò)120 s 后,Randoop 測(cè)試用例的方法覆蓋率逐漸降低.當(dāng)且僅當(dāng)生成時(shí)間為10 s 時(shí),對(duì)于Chart 項(xiàng)目,Randoop測(cè)試用例的方法覆蓋率高于Evosuite.當(dāng)生成時(shí)間達(dá)到20 s 后,無(wú)論在哪個(gè)項(xiàng)目上,Evosuite 測(cè)試用例的方法覆蓋率都高于Randoop.總體來(lái)看,Evosuite 測(cè)試用例的方法覆蓋率高于Randoop.

圖2 Evosuite 和Randoop 工具生成的測(cè)試用例數(shù)量與生成時(shí)間的關(guān)系

圖3 在不同的項(xiàng)目中,Evosuite 和Randoop 生成的測(cè)試用例數(shù)量對(duì)比

圖4 Evosuite 和Randoop 測(cè)試用例對(duì)被測(cè)類的方法覆蓋率與分支覆蓋率比較

(3) EvosuiteRandoop 工具生成的測(cè)試用對(duì)被測(cè)類的分支覆蓋率.

在Chart 和Math 項(xiàng)目中,Evosuite 工具生成的測(cè)試用例對(duì)被測(cè)類的分支覆蓋率隨著生成時(shí)間的增加逐漸上升.在Lang 項(xiàng)目中,當(dāng)生成時(shí)間為30 s 時(shí),Evosuite工具生成的測(cè)試用例的分支覆蓋率較生成時(shí)間比20 s 時(shí)略有降低.但在其余生成時(shí)間上,Evosuite 工具生成的測(cè)試用例的分支覆蓋率依舊隨著生成時(shí)間的增加而增加.當(dāng)生成時(shí)間為10~120 s 時(shí),Randoop 工具生成的測(cè)試用例的分支覆蓋率隨著生成時(shí)間的增加而增加.當(dāng)生成時(shí)間達(dá)到120 s 后,在Chart 和Lang 項(xiàng)目上,Randoop 工具生成的測(cè)試用例的分支覆蓋率達(dá)到最優(yōu)值,并保持穩(wěn)定.在Math 項(xiàng)目上,Randoop 工具生成的測(cè)試用例的分支覆蓋率逐漸下降.當(dāng)且僅當(dāng)生成時(shí)間為10 s 時(shí),在Chart 項(xiàng)目上Randoop 工具生成的測(cè)試用例分支覆蓋率與Evosuite 工具生成的測(cè)試用例分支覆蓋率相當(dāng),當(dāng)生成時(shí)間達(dá)到20 s 后,Evosuite 測(cè)試用例的分支覆蓋率高于Randoop 測(cè)試用例.整體來(lái)看,Evosuite 對(duì)被測(cè)類的分支覆蓋率同樣優(yōu)于Randoop.

(4) 影響Evosuite 對(duì)被測(cè)類的分支覆蓋率高于Randoop 的因素.

從上述結(jié)論可知,Evosuite 對(duì)被測(cè)類方法覆蓋率高于Randoop.原因之一是Randoop 工具的隨機(jī)性,不能覆蓋部分方法,就不能覆蓋到方法中的分支,而Evosuite可實(shí)現(xiàn)更多的方法覆蓋,可覆蓋到方法中的分支.圖5展示了同時(shí)被Evosuite 和Randoop 測(cè)試用例覆蓋的方法的分支覆蓋率.從圖5可見(jiàn),當(dāng)Evosuite 和Randoop同時(shí)覆蓋某個(gè)方法時(shí),Evosuite 測(cè)試用例對(duì)該方法的分支覆蓋程度高于Randoop.因此,Evosuite 對(duì)被測(cè)類分支覆蓋率高于Randoop 不僅因?yàn)镋vosuite 覆蓋了更多的方法,還因?yàn)镋vosuite 測(cè)試用例較Randoop 可以覆蓋到方法中的更多分支.

圖5 同時(shí)被Evosuite 和Randoop 測(cè)試用例覆蓋的方法的分支覆蓋率

4.2 影響Evosuite 和Randoop 工具生成的測(cè)試用例覆蓋率的因素

通過(guò)分析被測(cè)軟件,發(fā)現(xiàn)軟件版本中存在抽象類,而Randoop 工具在執(zhí)行時(shí),會(huì)忽略這些抽象類以及接口.所以,即使抽象類中存在著具體的方法(例如:Math_12,Lang_15 等),Randoop 工具也沒(méi)有對(duì)這些方法生成測(cè)試用例.可以認(rèn)定,被測(cè)軟件中存在的抽象類是影響Randoop 工具生成的測(cè)試用例覆蓋率的因素之一.在Randoop 工具改進(jìn)中,建議考慮對(duì)抽象類的處理.

圖6展示了Randoop 工具所生成的一個(gè)測(cè)試用例的樣例.在執(zhí)行該用例時(shí),發(fā)現(xiàn)深色標(biāo)注的代碼未執(zhí)行,從而未覆蓋該代碼所調(diào)用的被測(cè)方法.從這一測(cè)試用例中可以看出,Randoop 在生成測(cè)試用例時(shí),隨機(jī)模擬被測(cè)方法中所需要的參數(shù)來(lái)調(diào)用方法.當(dāng)Randoop 工具不確定測(cè)試代碼是否能成功執(zhí)行時(shí),將會(huì)以trycatch 語(yǔ)句包裹該代碼.實(shí)驗(yàn)證明,若測(cè)試用例中某些語(yǔ)句被try-catch 包裹,則該語(yǔ)句基本無(wú)法正常執(zhí)行,從而導(dǎo)致無(wú)法覆蓋其中被調(diào)用的被測(cè)方法.因?yàn)镽andoop不能成功模擬調(diào)用該被測(cè)方法所需要的參數(shù).Randoop的設(shè)計(jì)者也提到:目前Randoop 對(duì)于參數(shù)的選擇是隨機(jī)的.因此,有效模擬被測(cè)方法所需參數(shù)是影響Randoop覆蓋率的因素之一.當(dāng)Randoop 需要模擬某些參數(shù)來(lái)調(diào)用方法時(shí),可以依照上下文關(guān)系獲取該參數(shù)的值,而不是重新定義隨機(jī)值[15].

在圖4中,當(dāng)生成時(shí)間足夠長(zhǎng)時(shí),Evosuite 測(cè)試用例的方法覆蓋率達(dá)到90%以上,方法覆蓋程度并不是影響該工具分支覆蓋率的重要因素.圖7展示了 Evosuite工具對(duì)某被測(cè)模塊的覆蓋情況的樣例,Evosuite 工具所生成的測(cè)試用例雖然覆蓋了該方法,但當(dāng)方法中出現(xiàn)分支時(shí),Evosuite 無(wú)法覆蓋該分支中所包含的語(yǔ)句,該分支的運(yùn)行依賴于其他方法的執(zhí)行結(jié)果.因此,Evosuite工具對(duì)被測(cè)方法相關(guān)的依賴方法結(jié)果的構(gòu)造是影響分支覆蓋的因素之一.

圖6 Randoop 工具生成的一個(gè)測(cè)試用例樣例

圖7 Evosuite 工具對(duì)某被測(cè)模塊的覆蓋情況的樣例

4.3 有效性分析

內(nèi)部有效性,Evosuite 和Randoop 工具都具有一定的隨機(jī)性,若要評(píng)估工具測(cè)試用例的覆蓋率,應(yīng)生成盡可能多的測(cè)試用例.本實(shí)驗(yàn)在多個(gè)項(xiàng)目、多個(gè)版本、多個(gè)生成時(shí)間上分別生成3 組測(cè)試用例,實(shí)驗(yàn)數(shù)據(jù)具有一定的統(tǒng)計(jì)意義.在實(shí)驗(yàn)過(guò)程中,Randoop 工具每次運(yùn)行所生成的測(cè)試用例的方法覆蓋率和分支覆蓋率波動(dòng)較小;Evosuite 覆蓋率波動(dòng)情況較Randoop 更大,若以工具的最優(yōu)值作為衡量標(biāo)準(zhǔn),Evosuite 測(cè)試用例的覆蓋率結(jié)果將更優(yōu).但就Evosuite 運(yùn)行情況來(lái)看,采用最小值、最大值、平均值完整體現(xiàn)工具的真實(shí)情況,衡量工具覆蓋率更為合理.

外部有效性,從實(shí)驗(yàn)結(jié)果來(lái)看,Evosuite 工具生成的測(cè)試用例的方法覆蓋率和分支覆蓋率隨著生成時(shí)間的增加而增加.Randoop 工具在生成時(shí)間達(dá)到120 s 后,對(duì)于不同的項(xiàng)目方法覆蓋率和分支覆蓋率具有不同的特征.但Lang 和Math 項(xiàng)目是Apache Commons 中的基礎(chǔ)工具包,使用頻率較高,Chart 項(xiàng)目充分體現(xiàn)了繪圖程序的基本特征,因此,本實(shí)驗(yàn)選擇的被測(cè)項(xiàng)目既滿足了多樣性的需求,也保證了所選擇的軟件的代表性.

5 結(jié)論

本實(shí)驗(yàn)通過(guò)對(duì)Evosuite 和Randoop 工具所生成的測(cè)試用例的覆蓋率分析發(fā)現(xiàn):① 即使生成時(shí)間低至10 s,Radnoop 所生成的測(cè)試用例數(shù)量依舊高于Evosuite.并且當(dāng)生成時(shí)間到達(dá)20 s 后,單元測(cè)試工具Evosuite生成的測(cè)試用例的方法覆蓋率和分支覆蓋率覆蓋率高于Randoop.② 影響Randoop 工具覆蓋率的原因包含如何處理抽象類以及如何模擬被測(cè)方法所需要的參數(shù)等.Evosuite 工具提高覆蓋率的關(guān)鍵問(wèn)題是如何構(gòu)造與被測(cè)方法相關(guān)的依賴方法結(jié)果,以保證能夠覆蓋更多的分支.在未來(lái)的工作中,可以研究是否可以采用符號(hào)化執(zhí)行與隨機(jī)測(cè)試相結(jié)合的方法提高Randoop 工具的參數(shù)模擬能力.

猜你喜歡
測(cè)試用例覆蓋率分支
民政部等16部門:到2025年村級(jí)綜合服務(wù)設(shè)施覆蓋率超80%
我國(guó)全面實(shí)施種業(yè)振興行動(dòng) 農(nóng)作物良種覆蓋率超過(guò)96%
基于SmartUnit的安全通信系統(tǒng)單元測(cè)試用例自動(dòng)生成
巧分支與枝
基于混合遺傳算法的回歸測(cè)試用例集最小化研究
一類擬齊次多項(xiàng)式中心的極限環(huán)分支
基于噴丸隨機(jī)模型的表面覆蓋率計(jì)算方法
基于依賴結(jié)構(gòu)的測(cè)試用例優(yōu)先級(jí)技術(shù)
基于覆蓋率驅(qū)動(dòng)的高性能DSP指令集驗(yàn)證方法
生成分支q-矩陣的零流出性
津市市| 拉萨市| 佛冈县| 牙克石市| 镇坪县| 鄂托克旗| 新源县| 定南县| 灵武市| 区。| 玉山县| 阿图什市| 天峨县| 大名县| 扎兰屯市| 建宁县| 修武县| 安岳县| 资阳市| 昌邑市| 灌南县| 蕲春县| 泗阳县| 宝山区| 海盐县| 泊头市| 南郑县| 新和县| 陕西省| 丹棱县| 抚宁县| 德州市| 墨江| 灌阳县| 苏州市| 蓬溪县| 宁夏| 固安县| 定州市| 武山县| 合作市|