<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > Linux內核函數魯棒性關(guān)聯(lián)測試研究

Linux內核函數魯棒性關(guān)聯(lián)測試研究

作者: 時(shí)間:2012-03-09 來(lái)源:網(wǎng)絡(luò ) 收藏

35.jpg

在進(jìn)行時(shí),首先進(jìn)行參數,先把待測中有互相作用的參數進(jìn)行包裝,在中人為構造參數維度等于失效維度的情況。例如,f(A,B,C,D,E)中,參數A、B、C有。首先將參數E和參數F取合法輸入值,然后測試參數A、B、C的所有組合。若有失效,必定是一維失效或者三維失效。在對進(jìn)行了充分的關(guān)聯(lián)測試后,再進(jìn)行參數非關(guān)聯(lián)性測試。取出上例中參數A、B、C的一個(gè)合法組合,對參數E和參數F的所有用例分別進(jìn)行測試。若有失效,必定是一維失效,這樣也很容易分析測試結果和寫(xiě)出保護代碼。

通過(guò)對函數的參數關(guān)聯(lián)性進(jìn)行測試可得出結論,只有當函數所有參數都發(fā)生關(guān)聯(lián)作用時(shí),關(guān)聯(lián)測試所需用例的個(gè)數才會(huì )等于傳統組合測試所需的用例個(gè)數.所以,在覆蓋率不變的情況下,若采用關(guān)聯(lián)測試法,可以有效減少測試用例個(gè)數,并且還能夠消除維度失效跳變帶來(lái)的影響。

4 測試實(shí)例

實(shí)際測試中測試環(huán)境為DELL的DIMENSION 4700,操作系統為Redhat 8.0,系統為2.2.24.實(shí)測以read()函數參數組合表為例,其表中組合測試用例的個(gè)數為5×5×5=125個(gè)。進(jìn)行關(guān)聯(lián)測試時(shí)先對其參數的關(guān)聯(lián)性進(jìn)行分析,通過(guò)分析可以得知它的三個(gè)參數中只有buf和count有關(guān)聯(lián)。

實(shí)測中首先進(jìn)行關(guān)聯(lián)性測試,對read()函數的參數fd取正常值,測試參數buf和count的所有組合,測試結果如表2所示。共使用了25個(gè)測試用例。

36.jpg

在對上述測試結果進(jìn)行屏蔽失效后,轉入第二步,對參數fd進(jìn)行非關(guān)聯(lián)性測試,即針對fd與(buf+count)的組合進(jìn)行測試。對buf與count的組合取合法值后,針對參數fd的所有取值分別測試,這時(shí)只會(huì )發(fā)生一維失效,測試用例個(gè)數是5個(gè),其結果如表3所示。

37.jpg

由上述測試實(shí)例可見(jiàn),傳統組合測試法需要125個(gè)用例,而關(guān)聯(lián)測試只需要30個(gè)用例,兩者最終完成的函數測試覆蓋率相同。由此可見(jiàn),關(guān)聯(lián)測試是對傳統的組合測試的一種有效改進(jìn)。采用關(guān)聯(lián)測試可以避免上述問(wèn)題的產(chǎn)生。使用關(guān)聯(lián)測試時(shí)對參數之間關(guān)系進(jìn)行分析,還有可能發(fā)現傳統的組合測試沒(méi)有測到的失效用例,這樣關(guān)聯(lián)測試的覆蓋率相對于傳統組合測試來(lái)說(shuō),只會(huì )提高而不會(huì )降低,這對于函數的魯棒性提升十分有效。

理論分析和實(shí)例應用的結果表明,在函數的魯棒性測試中采用關(guān)聯(lián)測試來(lái)代替傳統的組合測試,可以在保證測試覆蓋率的同時(shí),使所需的測試用例大大減少,而且函數中相關(guān)聯(lián)的參數個(gè)數越少優(yōu)勢越明顯?,F實(shí)中Linux內核函數的參數之間關(guān)聯(lián)性較少,因此在其魯棒性測試中關(guān)聯(lián)測試方法具有很好的實(shí)際應用價(jià)值。

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)
光電開(kāi)關(guān)相關(guān)文章:光電開(kāi)關(guān)原理

上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>