新聞中心
軟件測試度量是一種通過檢測軟件測試過程的質(zhì)量和有效性來評估軟件開發(fā)的量化方法。開發(fā)團(tuán)隊(duì)使用測試指標(biāo)來跟蹤開發(fā)過程各個(gè)階段的軟件質(zhì)量。測試指標(biāo)對于管理層也很有用,它可以讓公司股東評估軟件開發(fā)團(tuán)隊(duì)的效率。

成都創(chuàng)新互聯(lián)客戶idc服務(wù)中心,提供成都二樞服務(wù)器租用托管、成都服務(wù)器、成都主機(jī)托管、成都雙線服務(wù)器等業(yè)務(wù)的一站式服務(wù)。通過各地的服務(wù)中心,我們向成都用戶提供優(yōu)質(zhì)廉價(jià)的產(chǎn)品以及開放、透明、穩(wěn)定、高性價(jià)比的服務(wù),資深網(wǎng)絡(luò)工程師在機(jī)房提供7*24小時(shí)標(biāo)準(zhǔn)級技術(shù)保障。
測試指標(biāo)應(yīng)該始終是有意義和可執(zhí)行的。問題是有些測試指標(biāo)無法達(dá)到這一目標(biāo)。許多指標(biāo)都是誤導(dǎo),有些只是無價(jià)值的指標(biāo),而有些則毫無意義。
下面這些無用的測試指標(biāo)的例子可以幫助你更好地理解測試指標(biāo)是否提供了所需的洞察力。
[[216533]]
1 執(zhí)行的測試用例的數(shù)量
這是一個(gè)糟糕的度量標(biāo)準(zhǔn),原因很簡單,它沒有告訴你測試用例測試的是什么。
這個(gè)度量標(biāo)準(zhǔn)的最初想法是,我們開發(fā)的測試用例越多,我們的測試就越全面。實(shí)際上,許多測試用例根本沒有對測試覆蓋率做出貢獻(xiàn)。許多測試套包含已棄用的測試,這些測試不再與軟件的新版本相關(guān)。測試用例的設(shè)計(jì)效率不高,因此它們會(huì)重疊,并且本質(zhì)上是測試相同的功能。
在這些和許多其他的情況下,擁有更多的測試用例并不是一件好事,這可能只是代表一個(gè)臃腫且過于復(fù)雜的測試套。
2每一個(gè)測試人員發(fā)現(xiàn)的Bug數(shù)
這是一個(gè)糟糕度量標(biāo)準(zhǔn)的原因之一在于,度量每一個(gè)測試人員的任何東西都不是一個(gè)好的實(shí)踐——它鼓勵(lì)過度的競爭,并且破壞協(xié)作的的團(tuán)隊(duì)工作,而團(tuán)隊(duì)合作在敏捷組織中得到了強(qiáng)烈的鼓勵(lì)。
有些公司甚至?xí)鶕?jù)每個(gè)軟件測試人員發(fā)現(xiàn)的缺陷來決定員工報(bào)酬,這對團(tuán)隊(duì)的目標(biāo)尤其不利,因?yàn)樗鶗?huì)抑制信息的共享,并促進(jìn)“每個(gè)人都只為自己”的態(tài)度。
此外,一個(gè)員工可能在測試一個(gè)穩(wěn)定的軟件特性,而另一個(gè)測試一個(gè)有缺陷的、不穩(wěn)定的特性。在這個(gè)度量標(biāo)準(zhǔn)下,后者會(huì)被認(rèn)為性能更好,因?yàn)樗l(fā)現(xiàn)了更多的bug,這是很愚蠢的的。
3百分比通過率
使用百分比通率作為度量指標(biāo)是一個(gè)壞主意,因?yàn)樵谀愕能浖_發(fā)團(tuán)隊(duì)中不鼓勵(lì)的行為很容易操縱這種指標(biāo)。
例如,測試團(tuán)隊(duì)可能會(huì)專注于執(zhí)行更容易通過的測試,從而提高通過率?;蛘?,團(tuán)隊(duì)可以將一個(gè)長時(shí)間的測試分解成許多小的測試,人為地提高百分比的通過率。換句話說,這個(gè)指標(biāo)變化無常,易于操縱。
4單元測試代碼覆蓋率
代碼覆蓋是另一個(gè)常用的度量指標(biāo),常常被錯(cuò)誤地使用。代碼覆蓋率是由單元測試覆蓋的代碼行百分比。代碼覆蓋可以給你一個(gè)完全錯(cuò)誤的實(shí)際測試覆蓋圖,原因有兩個(gè):
- 首先,單元測試并不是對你軟件的全面測試。它們只是測試代碼中特定的微組件是否能夠正常工作。即使你的車?yán)锏乃胁考冀?jīng)過了測試和***的工作,也不能保證汽車會(huì)啟動(dòng)。
- 其次,這個(gè)指標(biāo)對單元測試質(zhì)量沒有任何意義。一個(gè)單元測試可以包含優(yōu)雅設(shè)計(jì)的代碼,測試一個(gè)方法或函數(shù)的所有相關(guān)輸入和輸出?;蛘?,它可能是一團(tuán)亂麻,只測試其中的一些功能,或者其他無關(guān)的或已棄用的功能。用越來越多的草率的單元測試來覆蓋代碼對任何人都沒有好處。
5自動(dòng)化的百分比
在許多情況下,自動(dòng)執(zhí)行的測試用例百分比是一個(gè)無價(jià)值的度量標(biāo)準(zhǔn)。如果自動(dòng)化測試不像舊的手工測試那樣測試功能,那么越來越多的自動(dòng)化測試是沒有意義的?;蛘呷绻浖兓?,自動(dòng)化測試很快就會(huì)崩潰,需要完全重構(gòu)。
被這個(gè)指標(biāo)掩蓋的另一個(gè)方面是測試持續(xù)時(shí)間。添加越來越多的Selenium測試,進(jìn)行自動(dòng)化UI測試是一個(gè)好主意。但是運(yùn)行這些測試可以使構(gòu)建時(shí)間從幾分鐘增加到幾小時(shí)。在當(dāng)前頻繁發(fā)布版本的現(xiàn)實(shí)中,進(jìn)行這樣的測試需要非常謹(jǐn)慎,對于需要匆忙進(jìn)行交付的團(tuán)隊(duì)就只能跳過了。
6每一個(gè)缺陷的成本
這可能是軟件質(zhì)量的最古老的度量標(biāo)準(zhǔn),它早在上世紀(jì)60年代就在IBM內(nèi)部使用過。改度量指標(biāo)為一個(gè)bug貼上一個(gè)價(jià)格標(biāo)簽——識(shí)別一個(gè)bug、修復(fù)它、并驗(yàn)證它的成本。這個(gè)共識(shí)就是:在開發(fā)周期的早期修復(fù)bug要便宜得多,而在測試后期,或者在生產(chǎn)過程中,修復(fù)它們是非常昂貴的。
在開發(fā)周期的不同階段度量每個(gè)缺陷的成本是一個(gè)很好的想法。然而,一些團(tuán)隊(duì)度量每個(gè)缺陷的成本,以使軟件維護(hù)更有效。
主要問題是:對于軟件的質(zhì)量和用戶的經(jīng)驗(yàn),缺陷有不同的含義。有些缺陷是“化妝品”,對于軟件的用戶幾乎沒什么影響。而其他的一些缺陷,如安全問題,如果不解決的話可能會(huì)帶來災(zāi)難性后果。
一個(gè)軟件團(tuán)隊(duì)可能會(huì)把注意了放在那些影響不大的缺陷上,大幅降低每個(gè)缺陷的成本,但是最終會(huì)損壞軟件的質(zhì)量。
7缺陷密度
缺陷密度是指軟件中檢測到的得到確認(rèn)的缺陷數(shù)量。通常認(rèn)為較低的缺陷密度等同于較低的軟件質(zhì)量,但這并不是真的。
缺陷密度的一個(gè)問題是,缺陷的數(shù)量取決于測試是如何構(gòu)造和報(bào)告的,以及軟件測試人員的技能。某個(gè)軟件問題可以被當(dāng)成一個(gè)bug、或者是該問題不同方面的15個(gè)bug,或者根本沒有bug報(bào)告,因?yàn)闇y試人員沒有發(fā)現(xiàn)它。因此,對于相同的軟件,缺陷密度可能會(huì)有很大的變化。
結(jié)論
三個(gè)測試的挑戰(zhàn)
在當(dāng)今的測試世界中,有三個(gè)挑戰(zhàn)與測試指標(biāo)密切相關(guān):
- 找到一種同時(shí)提高測試質(zhì)量和速度的方法。持續(xù)測試是一種實(shí)踐,它有助于提高軟件質(zhì)量,同時(shí)與快速迭代保持同步。在持續(xù)的測試環(huán)境中,度量標(biāo)準(zhǔn)是至關(guān)重要的,以確保軟件質(zhì)量真實(shí)的提高,而不是在迭代之間被侵蝕。
- 防止未經(jīng)測試的代碼更改流入到生產(chǎn)環(huán)節(jié)中。沒有軟件可以真正做到***的測試覆蓋率(即使如上面提到的那樣做到100%的代碼覆蓋,這也不一樣。)傳統(tǒng)的通過/失敗度量不會(huì)告訴你最近的代碼更改是否經(jīng)過了測試。如果沒經(jīng)過測試,度量標(biāo)準(zhǔn)不會(huì)揭示發(fā)布這部分軟件所固有的風(fēng)險(xiǎn)。
- 收集用于分析的質(zhì)量指標(biāo)出處單一。有大量的工具可以提供QA指示。但是它們都比較典型的集中與度量測試團(tuán)隊(duì)的過程和工作。其中的某些指標(biāo)會(huì)如上述所說的那樣不確定或者誤導(dǎo)。今天的指標(biāo)不能提供足夠的、有意義的、顯示軟件質(zhì)量趨勢的信息。
真正提供有用信息,并幫助你了解軟件質(zhì)量的真實(shí)度量標(biāo)準(zhǔn)是很難得到的。
新的平臺(tái),如SeaLights,一個(gè)在敏捷環(huán)境中測量真實(shí)測試覆蓋率的平臺(tái),通過提供更有用的測試指標(biāo)和更具有代表性的軟件質(zhì)量來改變測試場景。具體地說,一種跨越所有類型自動(dòng)和手工測試的對于測試覆蓋的全面度量方法;一個(gè)“圣杯”度量,它揭示了每個(gè)敏捷版本中固有的風(fēng)險(xiǎn)。
隨著敏捷的出現(xiàn),軟件開發(fā)已經(jīng)成長起來,而測試也是如此,但是度量標(biāo)準(zhǔn)遠(yuǎn)遠(yuǎn)落在后面。最重要的是識(shí)別、評估和實(shí)踐真實(shí)的度量標(biāo)準(zhǔn)能夠幫助敏捷團(tuán)隊(duì)開發(fā)出更好的軟件。
網(wǎng)站題目:軟件開發(fā)測試7個(gè)無用的測試指標(biāo)
文章源于:http://www.fisionsoft.com.cn/article/cdsjsgi.html


咨詢
建站咨詢
