軟件測試是做什么的?
對于你個人針對軟件測試的目的的思考,從軟件項目來說是對的。對于軟件的測試并完全單單是測試出軟件的缺陷這一個目的。從大的方面來說,個人認(rèn)為主要有以下:

1、發(fā)現(xiàn)軟件的缺陷、以及軟件不足。通過各種手段測試軟件,包括軟件功能涉及到的各個方面,當(dāng)然還有細(xì)節(jié)處理等。通過測試可以發(fā)現(xiàn)軟件存在的缺陷,甚至程序Bug,以便于及時得到解決。如果測試不足,很容易造成到客戶現(xiàn)場檢查到問題,嚴(yán)重的可能導(dǎo)致雙方信任的問題。另外一方面也是測試發(fā)現(xiàn)軟件還有哪些不足的地方,以便于后續(xù)進(jìn)行改進(jìn)。
2、便于預(yù)防以及開發(fā)過程的改善。對于軟件的測試也是一個對團隊開發(fā)項目的全過程的一個檢視,從而為以后的開發(fā)進(jìn)行改善,以便于更有效率,更有質(zhì)量。這些可能包括:測試結(jié)果進(jìn)行反視、分析,可以發(fā)現(xiàn)團隊存在哪些不足,以便于改善。比如:可能發(fā)現(xiàn)設(shè)計的不足,或者技術(shù)不足導(dǎo)致的問題,或者開發(fā)團隊溝通交流的不足導(dǎo)致問題產(chǎn)生等等。

最重要的是要對測試的結(jié)果進(jìn)行分析,然后進(jìn)行解決。比如:技術(shù)不足就要加強技術(shù)的培訓(xùn)及人員培養(yǎng),溝通不足那么就要加強團隊的溝通協(xié)調(diào),設(shè)計能力不足那么就要加強設(shè)計能力的培訓(xùn),甚至可能發(fā)現(xiàn)成員的責(zé)任心不強就要加強責(zé)任心的培養(yǎng)等等。
3、團隊能力提高。從軟件開發(fā)內(nèi)部團隊來說,除了測試軟件本身問題以外,最重要的是要達(dá)到內(nèi)部團隊能力的提高。比如2中提到的加強各種培訓(xùn)培養(yǎng)等,也就是在以后的軟件項目中盡量不要犯以前的錯誤,或避免以前出現(xiàn)的問題,提高團隊的工作效率,能力,項目質(zhì)量等。從公司層面來說,項目開發(fā)管理可能就會上一個臺階,比如從CMMI角度,可能從2級到3級的升級,3級到4級等。
所以軟件測試的目的不限于軟件本身,也是為了預(yù)防以后軟件不出現(xiàn)類型缺陷,提高開發(fā)團隊成員的水平、團隊開發(fā)質(zhì)量及管理能力,提高公司整體開發(fā)水平的一種手段或者方法。

