翻譯|行業(yè)資訊|編輯:黃竹雯|2018-12-18 11:10:54.000|閱讀 634 次
概述:Parasoft軟件測(cè)試實(shí)踐關(guān)于什么左移測(cè)試以及實(shí)現(xiàn)方法介紹。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
Parasoft是一家專門提供軟件測(cè)試解決方案的公司,解決方案幾乎涵蓋了軟件開發(fā)周期從開始到結(jié)束所有的階段。在工作中,您越早發(fā)現(xiàn)代碼中的問題,他們的影響就越小,處理的成本也越低。在本文中,我們將探討左移方法以及如何在組織中左移。
“shift-left”的運(yùn)動(dòng)是將關(guān)鍵測(cè)試實(shí)踐轉(zhuǎn)移到開發(fā)生命周期的早期階段,其特別適用于敏捷、持續(xù)和DevOps計(jì)劃。那么為什么需要進(jìn)行早期的軟件測(cè)試呢?
許多測(cè)試活動(dòng)發(fā)生在周期的后期,需要更長(zhǎng)時(shí)間才能找出問題所在并且需要花費(fèi)更多的時(shí)間來修復(fù)。向左移動(dòng)是指將缺陷的識(shí)別和預(yù)防轉(zhuǎn)移到更早的階段。如果沒有進(jìn)行左移測(cè)試,只等著在周期的后期執(zhí)行測(cè)試實(shí)踐,那能做的就只是修補(bǔ)而不是正確的修復(fù)它們。
在Capers Jones的一個(gè)著名的圖表中很好地說明了左移測(cè)試策略,該圖表顯示了在軟件開發(fā)的幾個(gè)階段,軟件處理錯(cuò)誤和缺陷的成本在增加。該圖的第一部分顯示絕大多數(shù)錯(cuò)誤在編碼階段進(jìn)入,這是符合預(yù)期的。
無論是出現(xiàn)實(shí)際錯(cuò)誤,還是誤解了要求,或者沒有考慮特定代碼片段的影響,開發(fā)人員都會(huì)在代碼生成時(shí)引入缺陷。
我們?cè)谝氲膱D表發(fā)現(xiàn)缺陷的位置進(jìn)行顯示,發(fā)現(xiàn)基本上是第一條線的反轉(zhuǎn)。
這并不奇怪,因?yàn)橥ǔT陂_始測(cè)試時(shí)會(huì)發(fā)現(xiàn)錯(cuò)誤,如果沒有適當(dāng)?shù)幕A(chǔ)設(shè)施以及在一切準(zhǔn)備就緒之前就開始測(cè)試可能會(huì)很困難。我們?cè)谶@里看到的是,錯(cuò)誤主要是在編碼期間引入的,但在該階段幾乎從未找到過。
由于大多數(shù)錯(cuò)誤是在編碼期間引入的,但直到后期才發(fā)現(xiàn),因此了解在每個(gè)開發(fā)階段修復(fù)缺陷所需的成本差異變得非常重要。如下圖所示:
我們看到一個(gè)令人討厭的成本變化。修復(fù)潛入系統(tǒng)測(cè)試Bug的成本是在編碼期間修復(fù)它的40倍,或者比在單元測(cè)試期間找到相同的bug要貴10倍。這種成本上升的原因有很多,包括:
現(xiàn)在橙色線添加到下圖中,它表明了在早期測(cè)試的建議下Bug檢測(cè)周期已經(jīng)左移:
您可以看到橙色檢測(cè)曲線代表的成本值在左側(cè)變大,意味著我們的成本顯著下降。
左移測(cè)試依賴于更成熟的開發(fā)實(shí)踐環(huán)境,您只需要進(jìn)行一定的手動(dòng)/UI測(cè)試即可證明一切正常。這樣,后期循環(huán)測(cè)試就是為了證明功能,而不是發(fā)現(xiàn)錯(cuò)誤。
有些組織在進(jìn)一步向左推進(jìn)編碼本身時(shí)會(huì)獲得更多的價(jià)值。畢竟這是最開始引入錯(cuò)誤的地方。通過查找更左邊的缺陷,使缺陷修復(fù)更便宜:
更遠(yuǎn)的左移測(cè)試有一個(gè)危險(xiǎn),就是不小心給開發(fā)人員帶來太多的測(cè)試負(fù)擔(dān)。雖然隨著時(shí)間的推移,缺陷修復(fù)的成本會(huì)大幅提高,但左側(cè)的資源可能是軟件生命周期中的最高成本。
所以正確的是將所有提到的這些提升到一個(gè)新的水平。我們不僅希望更早發(fā)現(xiàn)缺陷,而且希望減少實(shí)際放入應(yīng)用程序的缺陷數(shù)量。
執(zhí)行早期階段開發(fā)實(shí)踐(例如靜態(tài)代碼分析和單元測(cè)試)有助于在流程早期識(shí)別和預(yù)防缺陷。重要的是減少錯(cuò)誤的數(shù)量而不是找到錯(cuò)誤。
您必須接受在開發(fā)過程的所有階段(包括后續(xù)階段)創(chuàng)建的測(cè)試,并繼續(xù)執(zhí)行它們。單元測(cè)試可以很容易地連續(xù)執(zhí)行,但由于外部系統(tǒng)依賴性,后續(xù)階段功能測(cè)試的執(zhí)行通常很困難,這是您可以利用服務(wù)虛擬化實(shí)現(xiàn)連續(xù)測(cè)試的地方。
有效的質(zhì)量保證流程可顯著提高質(zhì)量,同時(shí)節(jié)省時(shí)間和金錢。 當(dāng)您通過利用現(xiàn)代軟件測(cè)試技術(shù)向左移動(dòng)時(shí),您可以獲得可靠和安全的軟件。通過左移測(cè)試,您可以通過更早發(fā)現(xiàn)Bug來降低測(cè)試成本,同時(shí)還可以減少放入代碼中的Bug數(shù)量。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn