亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        軟件故障定位關(guān)鍵技術(shù)研究綜述

        2017-09-05 02:08:08黃小紅趙逢禹
        軟件導(dǎo)刊 2017年7期

        黃小紅+趙逢禹

        摘 要:軟件故障定位旨在利用程序信息和測(cè)試信息定位出故障語(yǔ)句或給出出錯(cuò)語(yǔ)句的可疑范圍,以輔助提高軟件質(zhì)量。隨著軟件結(jié)構(gòu)的復(fù)雜化與軟件規(guī)模的擴(kuò)大化,程序運(yùn)行狀態(tài)呈指數(shù)級(jí)增長(zhǎng),已經(jīng)無(wú)法單獨(dú)依靠手動(dòng)定位技術(shù)進(jìn)行故障排查。因此,越來(lái)越多的輔助定位技術(shù)應(yīng)運(yùn)而生。為了探索這些技術(shù)的實(shí)用性,首先介紹了傳統(tǒng)的故障定位技術(shù)以及近年來(lái)最新推廣的故障定位技術(shù),然后總結(jié)了常用的測(cè)試程序集,最后提出故障定位的關(guān)鍵問(wèn)題并指出了未來(lái)值得關(guān)注的研究方向。

        關(guān)鍵詞:故障定位;程序調(diào)試;軟件測(cè)試;執(zhí)行跟蹤;可疑代碼

        DOIDOI:10.11907/rjdk.171181

        中圖分類號(hào):TP301

        文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-7800(2017)007-0205-05

        0 引言

        軟件應(yīng)用的日益廣泛已深入影響到人們的生活[1-3],尤其在許多危及安全的行業(yè),如醫(yī)藥、航空、核能行業(yè)等,而且這種趨勢(shì)隨著軟件的復(fù)雜化而更加明顯。與此同時(shí),也衍生了令人堪憂的軟件故障,故障的產(chǎn)生不僅導(dǎo)致經(jīng)濟(jì)損失,甚至可能造成生命威脅[4]。伴隨著軟件成本的增加,超過(guò)一半的修復(fù)成本被傳遞給消費(fèi)者。因此,為了降低成本、提高軟件質(zhì)量,必須加強(qiáng)軟件故障定位的研究。

        軟件調(diào)試中一個(gè)很重要的因素就是找到產(chǎn)生程序故障的根源,失敗問(wèn)題產(chǎn)生的根源可能離程序展示出的位置距離很遠(yuǎn),例如程序崩潰或產(chǎn)生故障輸出時(shí)無(wú)法直接定位具體故障源。因此,軟件故障定位和軟件故障修復(fù)應(yīng)運(yùn)而生。相對(duì)于軟件修復(fù),故障定位更為重要,定位是修復(fù)的必要條件。由于軟件系統(tǒng)規(guī)模不斷擴(kuò)大,使傳統(tǒng)的手工定位耗時(shí)耗力,而且受軟件開(kāi)發(fā)人員的思維定位,以及編碼風(fēng)格、約束規(guī)范限制,可能導(dǎo)致無(wú)法快速有效地找到故障位置。通過(guò)引入自動(dòng)化故障定位技術(shù),可使定位效率大大提高。目前,越來(lái)越多的研究者開(kāi)始致力于軟件故障定位的研究且取得了可觀的成果,本文主要對(duì)2010年以來(lái)故障定位的相關(guān)成果進(jìn)行研究,以期準(zhǔn)確把握故障定位的發(fā)展方向。

        1 故障定位技術(shù)

        1.1 故障定位常見(jiàn)技術(shù)

        傳統(tǒng)的故障定位技術(shù)在簡(jiǎn)單的小型程序中解決了軟件可靠性低的難題,提高了軟件質(zhì)量,但是隨著軟件的規(guī)?;c復(fù)雜化發(fā)展,近年來(lái)不斷出現(xiàn)新的故障定位技術(shù),雖然沒(méi)有任何一種技術(shù)可以適用于所有故障定位場(chǎng)景,但是各種技術(shù)都各具優(yōu)勢(shì)。

        1.1.1 基于覆蓋的故障定位技術(shù)

        故障定位研究實(shí)質(zhì)上是解決如何把存在故障的程序語(yǔ)句排名推至首位?;诟采w的故障定位技術(shù)較為直觀,覆蓋分析法正是采用可疑度描述來(lái)降低定位復(fù)雜度,尤其適用于一些大規(guī)模的故障定位。Wong等[6]作了如下假設(shè):元素可疑度與被成功測(cè)試用例覆蓋次數(shù)成反比,與被失敗測(cè)試用例覆蓋次數(shù)成正比。簡(jiǎn)而言之,如果該元素被失敗測(cè)試用例覆蓋的多,而很少被成功測(cè)試用例覆蓋,該處引發(fā)故障的可能性則很大;Jones等[5]基于同樣的思想提出利用覆蓋信息和測(cè)試信息定位錯(cuò)誤,并開(kāi)發(fā)了可視化工具Tarantula;Xie等[7]提出了集合理論的分析框架,之后又通過(guò)蛻變技術(shù)將軟件測(cè)試分析技術(shù)集成到故障定位中[8],反映了更加真實(shí)的場(chǎng)景。其不足之處是測(cè)試用例的數(shù)量、質(zhì)量限制了覆蓋的全面性,而且如果用例數(shù)量過(guò)少,覆蓋不全面,或者用例質(zhì)量差,大量測(cè)試用例重復(fù)覆蓋相同代碼,將產(chǎn)生大量冗余覆蓋,從而導(dǎo)致故障定位的精準(zhǔn)度降低[9]。

        1.1.2 基于程序切片的故障定位技術(shù)

        程序切片技術(shù)將程序抽象化,通過(guò)刪除不相關(guān)的部分將程序用切片表示,切片保留原始程序的行為規(guī)范。程序切片技術(shù)包括靜態(tài)切片技術(shù)和動(dòng)態(tài)切片技術(shù)。靜態(tài)切片技術(shù)是對(duì)源程序采取靜態(tài)分析技術(shù),利用語(yǔ)句之間的依賴關(guān)系將相關(guān)變量語(yǔ)句集合形成靜態(tài)切片。靜態(tài)切片技術(shù)最早由Weiser首次提出[10],該技術(shù)主要將整個(gè)程序分為若干個(gè)切片,通過(guò)含有錯(cuò)誤變量的程序切片來(lái)排除無(wú)關(guān)變量,從而縮減故障范圍。靜態(tài)切片的缺點(diǎn)是,片的大小可能會(huì)對(duì)給定的可執(zhí)行語(yǔ)句帶來(lái)影響,如變量值隨著執(zhí)行的改變導(dǎo)致切片發(fā)生變化,而且當(dāng)程序規(guī)模較大時(shí),算法時(shí)間開(kāi)銷會(huì)很大。因此,Zhang等[11]提出了多種動(dòng)態(tài)切片技術(shù),包括后向動(dòng)態(tài)切片(BWS)、前向動(dòng)態(tài)切片(FWS)和雙向動(dòng)態(tài)切片(BIS)。BWS通過(guò)執(zhí)行語(yǔ)句輸出而捕捉故障變量的值;FWS通過(guò)計(jì)算成功用例的最小輸入觸發(fā)故障所在位置;BIS通過(guò)確定失敗執(zhí)行用例的謂詞執(zhí)行情況,生成正確的輸出,從而找到故障所在位置。

        1.1.3 基于程序頻譜的故障定位技術(shù)

        基于頻譜分析進(jìn)行故障定位的方法簡(jiǎn)單而言是根據(jù)測(cè)試用例集合運(yùn)行完成后的記錄信息,使用風(fēng)險(xiǎn)評(píng)估方法對(duì)程序中的每一行語(yǔ)句計(jì)算故障可疑度。可利用的記錄信息主要是程序執(zhí)行過(guò)程中的剖面信息與測(cè)試用例是否通過(guò)的信息[31]。

        表1給出了常用的符號(hào)說(shuō)明作參考。

        1.2 最新推廣的故障定位技術(shù)

        1.2.1 基于數(shù)據(jù)挖掘的故障定位技術(shù)

        基于數(shù)據(jù)挖掘的故障定位技術(shù)試圖從大量程序運(yùn)行信息數(shù)據(jù)中提取相關(guān)信息,產(chǎn)生一個(gè)可使用的數(shù)據(jù)模型,從而達(dá)到定位效果。Cellier等[15]提出了數(shù)據(jù)挖掘的關(guān)聯(lián)規(guī)則和概念分析以協(xié)助故障定位,該技術(shù)通過(guò)語(yǔ)句覆蓋率之間的關(guān)系和相應(yīng)的執(zhí)行失敗的測(cè)試用例之間的關(guān)聯(lián)關(guān)系,測(cè)量每個(gè)規(guī)則出現(xiàn)的頻率,通過(guò)已給閾值篩選出滿足關(guān)聯(lián)規(guī)則的語(yǔ)句執(zhí)行數(shù)量,生成規(guī)則點(diǎn)陣,最后生成一個(gè)可疑度排名來(lái)定位故障;Zhang等[16]提出一種基于數(shù)據(jù)挖掘的故障定位技術(shù),該技術(shù)基于馬爾可夫邏輯,結(jié)合一階邏輯與加權(quán)馬爾可夫隨機(jī)域進(jìn)行感知器算法學(xué)習(xí);王鵬等[14]提出基于圖挖掘的技術(shù),通過(guò)收集程序的執(zhí)行軌跡信息構(gòu)造出程序調(diào)用圖,提取頻繁邊輔助定位故障。

        1.2.2 基于模型檢測(cè)的故障定位技術(shù)

        基于模型檢測(cè)的故障定位技術(shù)通過(guò)推導(dǎo)期望的程序行為模型,檢測(cè)失效執(zhí)行對(duì)期望行為的違背情況,從而捕捉故障行為,主要需解決的關(guān)鍵問(wèn)題是模型表達(dá)能力問(wèn)題,以及模型對(duì)定位效果是否有顯著影響力,是否快速有效。Baah等[17]提出通過(guò)程序依賴圖模型研究程序的內(nèi)部行為,促進(jìn)了可能與故障有關(guān)語(yǔ)句的概率分析和推理。基于檢測(cè)的模型主要依賴模型檢查器來(lái)定位故障[18]。如果一個(gè)模型不滿足相應(yīng)的程序規(guī)范(這意味著模型包含至少一個(gè)故障),模型檢查器可提供反例顯示違反規(guī)范詳情,反例并不直接指定哪些部分的模型與故障相關(guān),但是它可以被視為一個(gè)可確定因果關(guān)系的失敗測(cè)試用例。宗芳芳等[20]提出二次定位策略技術(shù),首先從程序中抽象出函數(shù)調(diào)用圖,用基于模型的方法對(duì)可能存在故障的函數(shù)進(jìn)行可疑排序,最后利用DStar定位函數(shù)中故障的代碼行;Wotawa等[19]利用約束求解的技術(shù)將程序自動(dòng)編譯成一組約束,實(shí)現(xiàn)模型檢測(cè)定位,優(yōu)點(diǎn)是減少了可疑語(yǔ)句的搜索域范圍,缺點(diǎn)是不同程序往往具有不同的異常行為。因此,并沒(méi)有一個(gè)完整的模型可以滿足所有可能的故障模式以及故障類型之間的關(guān)聯(lián)。endprint

        1.2.3 其它故障定位技術(shù)

        除了上面討論的技術(shù)之外,近年來(lái)還出現(xiàn)了很多其它的軟件故障定位技術(shù)。Souza等[21]提出使用覆蓋率數(shù)據(jù)集成技術(shù)來(lái)定位故障,通過(guò)創(chuàng)建可疑語(yǔ)句排名列表的技術(shù)進(jìn)行定位。以信息檢索技術(shù)為切入點(diǎn)的研究也取得了很多新的研究成果[22-23,25]。這些研究使用基于源代碼的搜索得到故障相關(guān)報(bào)告的降序等級(jí)排列,可以幫助開(kāi)發(fā)人員檢查被標(biāo)注的文件是否包含故障。算法調(diào)試也是一個(gè)創(chuàng)新性的故障定位技術(shù),Silva[25]提出將復(fù)雜計(jì)算分解為一系列子計(jì)算幫助故障定位。公式故障定位技術(shù)[26-29]則依賴于對(duì)編碼失敗的程序公式執(zhí)行軌跡跟蹤,該技術(shù)使用特定工具或算法公式幫助程序員捕捉導(dǎo)致失敗的相關(guān)語(yǔ)句。

        2 主流程序集

        表2總結(jié)了當(dāng)前在故障定位研究中常用的程序集,分別從各程序集的名稱、代碼行數(shù)、簡(jiǎn)述以及語(yǔ)言類型作簡(jiǎn)要展示,程序集多來(lái)源于SIR[32]和SourceForge[33]。

        表2展示了故障定位中常用的程序集,設(shè)計(jì)各個(gè)方面的程序測(cè)試,其中的Siemens程序集是最常用的程序集,該程序集由7個(gè)程序組成,程序結(jié)構(gòu)多樣化,通用性較強(qiáng),但是每個(gè)子程序僅有不到600行代碼(不包括空白行),而且是針對(duì)C語(yǔ)言程序定位的,因此后續(xù)出現(xiàn)了grep、flex等數(shù)萬(wàn)行代碼的程序集,而且新增了Java和C++語(yǔ)言,極大地方便了各種語(yǔ)言下的定位應(yīng)用。

        3 未來(lái)研究方向展望

        現(xiàn)有的故障定位技術(shù)已取得了不少研究成果,但是還有很多結(jié)果有待完善,如多故障定位技術(shù)[35-36]、測(cè)試用例套件質(zhì)量[37-38]以及巧合正確性帶來(lái)的影響[39]。

        3.1 多故障定位

        對(duì)于故障數(shù)量及其相關(guān)性有幾個(gè)常見(jiàn)假設(shè),這些假設(shè)往往基于某種技術(shù)效果顯而易見(jiàn),但是換一種定位技術(shù)或者換一種實(shí)驗(yàn)程序集則不奏效,常見(jiàn)假設(shè)如下:①假設(shè)程序只有一個(gè)故障。實(shí)際應(yīng)用中程序通常包含多個(gè)故障,因此需質(zhì)疑基于單個(gè)故障場(chǎng)景的定位效果,并盡量研究多故障并存下的故障定位效果;②假設(shè)即使程序中有多個(gè)故障,這些故障也都獨(dú)立執(zhí)行。這一假設(shè)也在近年的研究中被質(zhì)疑,因?yàn)橥粋€(gè)程序的不同故障很有可能相互作用,相長(zhǎng)作用的結(jié)果往往會(huì)觸發(fā)新故障,相消作用的結(jié)果則往往掩蓋掉已有的故障;③假設(shè)調(diào)試一輪即能找到一個(gè)故障。通常程序經(jīng)過(guò)一次調(diào)試后被程序員修復(fù)了一個(gè)故障,然而再次運(yùn)行修改之后的程序不能保證不會(huì)對(duì)其它故障造成影響,因此被改動(dòng)之后的程序往往不能當(dāng)作測(cè)試用例集中的一員再次運(yùn)行,而是要重新啟動(dòng)其它測(cè)試用例。

        3.2 測(cè)試用例套件

        常見(jiàn)的定位技術(shù)多用于測(cè)試用例的執(zhí)行狀態(tài),如執(zhí)行成功狀態(tài)或者執(zhí)行失敗狀態(tài)來(lái)討論對(duì)應(yīng)計(jì)數(shù)所需尋找的信息,關(guān)注點(diǎn)幾乎都在測(cè)試用例的執(zhí)行結(jié)果上。因此,一個(gè)良好的測(cè)試用例套件對(duì)程序的有效定位具有重要意義。關(guān)于測(cè)試用例套件重要性的表現(xiàn)如下:

        (1) 測(cè)試用例套件會(huì)影響故障定位技術(shù)的有效性。實(shí)驗(yàn)證明,現(xiàn)階段采用的同時(shí)關(guān)注多條測(cè)試用例取得的定位效果往往要高于僅關(guān)注導(dǎo)致程序出現(xiàn)故障的一條失敗測(cè)試用例和多條成功測(cè)試用例的效果,因?yàn)樵诙鄺l測(cè)試用例的對(duì)比下,可以提供更加詳細(xì)的故障線索。因此,如何生成一個(gè)自動(dòng)化的測(cè)試用例套件仍然需要進(jìn)一步探討。

        (2) 不能實(shí)現(xiàn)高覆蓋的測(cè)試用例套件對(duì)目標(biāo)程序的故障定位結(jié)果可能造成不利影響。為了減少這類影響,可用禁忌搜索技術(shù)自動(dòng)生成一個(gè)測(cè)試用例套件,以達(dá)到最大的分支覆蓋或者對(duì)原始測(cè)試用例集約簡(jiǎn)后,確保原有故障定位的準(zhǔn)確性并保持較高約簡(jiǎn)比。

        (3) 對(duì)給定的被測(cè)程序使用全套測(cè)試用例未必有效。如果合理減少測(cè)試用例數(shù)量,選擇測(cè)試用例子集或者給其分配一定的優(yōu)先級(jí),可能定位效率更高。分配測(cè)試用例優(yōu)先級(jí)的技術(shù)是給予導(dǎo)致執(zhí)行失敗的測(cè)試用例優(yōu)先執(zhí)行,因?yàn)檫@樣可以提供更多信息,減少搜索域。

        3.3 巧合正確性

        巧合正確性即在各種程序狀態(tài)下,本來(lái)執(zhí)行結(jié)果失敗的測(cè)試用例由于特殊原因?qū)е聢?zhí)行結(jié)果仍然是正確的。這種現(xiàn)象發(fā)生的原因很多,例如給定一個(gè)存在故障的語(yǔ)句,對(duì)語(yǔ)句變量分配不正確的值,測(cè)試執(zhí)行過(guò)程中,該值可能會(huì)影響程序的輸出導(dǎo)致失敗。然而在測(cè)試不斷執(zhí)行的過(guò)程中,該變量的值可能因?yàn)楸桓采w而未影響到程序輸出,或者根本沒(méi)有觸發(fā)到故障所在的位置,因此在實(shí)際操作中要考慮巧合正確性的存在,以減少定位誤差。

        4 結(jié)語(yǔ)

        隨著軟件結(jié)構(gòu)復(fù)雜化與軟件規(guī)模的擴(kuò)大化,軟件故障定位需要更多的時(shí)間投資和資源投資,定位程序故障不再是簡(jiǎn)單的機(jī)械過(guò)程,而是朝著自動(dòng)化、智能化的方向發(fā)展。在以往的實(shí)踐中,對(duì)軟件的調(diào)試工作往往由具有豐富經(jīng)驗(yàn)的程序員手動(dòng)調(diào)試,如果判斷失誤,則采用回退技術(shù)返回起點(diǎn)再次調(diào)試,這種機(jī)械枯燥的操作使程序員急切需要一種能快速有效定位的技術(shù)。當(dāng)務(wù)之急是將定位技術(shù)融入到實(shí)際應(yīng)用中,結(jié)合新興技術(shù)的發(fā)展趨勢(shì)以及程序員的經(jīng)驗(yàn)和應(yīng)用能力,根據(jù)特定場(chǎng)景應(yīng)用相應(yīng)的定位技術(shù)。本文梳理了當(dāng)前的最新定位研究成果,分析了常見(jiàn)的以及最新流行的定位技術(shù)和當(dāng)前的主流程序集,最后針對(duì)當(dāng)前出現(xiàn)的主要問(wèn)題,提出了若干值得研究的方向。

        參考文獻(xiàn):

        [1] SCHOOOP G,LAMINA J.On the effectiveness of the tarantula fault localization technique for different fault classes[J].IEEE International Symposium on High-assurance Systems Engineering,2011,69(5):317-324.

        [2] 王勇.軟件過(guò)程資產(chǎn)庫(kù)的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2016(7):106-108.

        [3] ZHOU X,WANG H,ZHAO J.A fault-localization approach based on the coincidental correctness probability[C].IEEE International Conference on Software Quality,Reliability and Security,2015.endprint

        [4] WRIGHT C S,ZIA T A.A quantitative analysis into the economics of correcting software bugs[C].Computational Intelligence in Security for Information Systems,International Conference,Held at Iwann 2011,Torremolinos-Málaga,Spain,2011:198-205.

        [5] JONES J A,HARROLD M J,STASKO J.Visualization of test information to assist fault localization[C].Proceedings of the 24th International Conference on Software Engineering,IEEE Computer Society,2002:467-477.

        [6] WONG W E,DEBROY V,GAO R,et al.The DStar method for effective software fault localization[J].IEEE Transactions on Reliability,2014,63(1):290-308.

        [7] XIE X,CHEN T Y,KUO F C,et al.A theoretical analysis of the risk evaluation formulas for spectrum-based fault localization[J].Acm Transactions on Software Engineering & Methodology,2013,22(4):402-418.

        [8] KAVITHA P.An integrated method for program proving,testing and debugging[J].Middle East Journal of Scientific Research,2014,20(12):2310-2315.

        [9] JIANG B,CHAN W K,TSEe T H.On practical adequate test suites for integrated test case prioritization and fault localization[C].International Conference on Quality Software.IEEE Computer Society,2011:21-30.

        [10] WEISER M D.Program slices: formal,psychological,and practical investigations of an automatic program abstraction method[M].University of Michigan,1979.

        [11] ZHANG X,NEELAM G,RAJIV G.Locating faulty code by multiple points slicing[J].Software Practice & Experience,2007,37(9):935-961.

        [12] KOREL B.PELAS-program error-locating assistant system[J].IEEE Transactions on Software Engineering,1988,14(9):1253-1260.

        [13] KOREL B,LASKI J.STAD-a system for testing and debugging: user perspective[C].The Workshop on Software Testing,1988:13-20.

        [14] 楊書新,徐麗萍,王鵬.基于圖挖掘和決策樹(shù)的軟件故障定位研究[J].計(jì)算機(jī)工程與應(yīng)用,2015,51(20):67-71.

        [15] DUCASSé M,F(xiàn)ERRé S,RIDOUX O,et al.Multiple fault localization with data mining[J].Seke,2011.

        [16] ZHANG S,ZHANG C.Software bug localization with markov logic[C].Companion Proceedings of the 36th International Conference on Software Engineering.ACM,2014:424-427.

        [17] BAAH G K,PODURSKI A,HARROLD M J.The probabilistic program dependence graph and its application to fault diagnosis[J].IEEE Transactions on Software Engineering,2009,36(4):528-545.

        [18] GRIESMAYER A,STABER S,BLOEM R.Fault localization using a model checker[J].Software Testing Verification & Reliability,2010,20(2):149-173.

        [19] NICA M,NICA S,WOTAWA F.On the use of mutations and testing for debugging[J].Software Practice & Experience,2013(43):1121-1142.endprint

        [20] 宗芳芳,黃鴻云,丁佐華.基于二次定位策略的軟件故障定位[J].軟件學(xué)報(bào),2016(8):1993-2007.

        [21] DE SOUZA H A,LORDELLO CHAIM M.Adding context to fault localization with integration coverage[C].Ieee/acm,International Conference on Automated Software Engineering,2013:628-633.

        [22] RAO S,KAK A.Retrieval from software libraries for bug localization: a comparative study of generic and composite text models[C].International Working Conference on Mining Software Repositories,MSR.2011:43-52.

        [23] SAHA R K,LEASE M,KHURSHID S,et al.Improving bug localization using structured information retrieval[C].Ieee/acm,International Conference on Automated Software Engineering.2013:345-355.

        [24] ZHOU J,ZHANG H,LO D.Where should the bugs be fixed? more accurate information retrieval-based bug localization based on bug reports[C].International Conference on Software Engineering,2012:14-24.

        [25] SILVA J.A survey on algorithmic debugging strategies[J].Advances in Engineering Software,2011,42(11):976-991.

        [26] CHRIST J,ERMIS E,SCHF M,et al.Flow-sensitive fault localization[M].Verification,Model Checking,and Abstract Interpretation.Springer Berlin Heidelberg,2013:189-208.

        [27] ERMIS E,SCHF M,WIES T.Error invariants[M].FM 2012: Formal Methods.Springer Berlin Heidelberg,2012:187-201.

        [28] 施小燕.基于條件概率公式的故障定位問(wèn)題研究[D].南京:南京大學(xué),2013.

        [29] JOSE M,MAJUMDAR R.Cause clue clauses: error localization using maximum satisfiability[J].Acm Sigplan Notices,2011,46(6):437-446.

        [30] RENIERES M,REISS S P.Fault localization with nearest neighbor queries[C].IEEE International Conference on Automated Software Engineering,2003:30-39.

        [31] 黃燕勤.有關(guān)基于頻譜和聚類方法定位故障的實(shí)證研究[D].南京:南京大學(xué),2015.

        [32] Software-artifact infrastructure repository[EB/OL]http://sir.unl.edu/portal/index.html.

        [33] Sourceforge[EB/OL]http://sourceforge.net.

        [34] LUCIA,THUNG F,LO D,et al.Are faults localizable[C].IEEE Working Conference on Mining Software Repositories,2012:74-77.

        [35] DIGIUSEPPE N,JONES J A.On the influence of multiple faults on coverage-based fault localization[C].International Symposium on Software Testing and Analysis.ACM,2011:556-559.

        [36] ARTZI S,DOLBY J,TIP F,et al.Practical fault localization for dynamic web applications[C].ACM/IEEE,International Conference on Software Engineering.IEEE,2010:265-274.

        [37] JIANG B,CHAN W K,TSE T H.On practical adequate test suites for integrated test case prioritization and fault localization[C].International Conference on Quality Software.IEEE Computer Society,2011:21-30.

        [38] ZHANG Z,CHAN W K,TSE T H.Fault localization based only on failed runs[J].Computer,2012,45(6):64-71.

        [39] MASRI W,ASSI R A.Cleansing test suites from coincidental correctness to enhance fault-localization[C].International Conference on Software Testing,Verification and Validation,ICST 2010,Paris,F(xiàn)rance,2010:165-174.endprint

        日韩在线永久免费播放| 无码不卡一区二区三区在线观看| 国产成人亚洲综合小说区| av资源在线免费观看| 丰满熟妇乱又伦精品| 久久精品人人做人人爽| 欧美中文字幕在线看| 蜜桃视频网址在线观看| 国产精品无码素人福利| 一本久久a久久精品亚洲| 丰满人妻无套中出中文字幕| 中文字幕人妻av四季| 在厨房被c到高潮a毛片奶水| 国产女女精品视频久热视频| 日韩中文字幕久久久经典网 | 国产爆乳无码一区二区在线| 美腿丝袜一区在线观看| 2021国产精品视频网站| 精品人妻伦九区久久aaa片69| 亚洲av影院一区二区三区四区| 久久精品蜜桃美女av| 欧美性猛交xxxx免费看蜜桃| 人妻无码人妻有码中文字幕| 久久精品国产精品亚洲艾| 青青草成人免费在线视频| 久久久久成人精品无码| 欧美成人三级一区二区在线观看 | 欧美性xxx久久| 深夜黄色刺激影片在线免费观看 | 日韩人妻中文字幕专区| 麻豆影视视频高清在线观看| 夜夜春精品视频| 国产精品自产拍av在线| 97人伦影院a级毛片| 色老汉免费网站免费视频| 抖射在线免费观看视频网站| 亚洲视频免费一区二区| 熟女免费观看一区二区 | 久久精品无码一区二区2020| 精品亚洲国产亚洲国产| 欧美精品videosse精子|