作者:陳市明
摘自:http://www.tkk7.com/JPeanut
測試過程可以分成測試用例設計,測試用例執(zhí)行,測試結(jié)果分析。測試用例設計在其中是最重要的一塊,往往會決定整個測試的有效性,一般都是由經(jīng)驗豐富的測試設計人員負責。但是,怎么設計出一套好的測試用例的確不是一件易事。
看過
關河
大哥的《測試用例設計的誤區(qū)》文章
和
周毅
的《使用用例場景
設計測試用例》挺有啟發(fā)的。
什么樣的測試用例才是好的測試用例
在這個的問題上,挺同意
關河大哥
的想法的,我們的測試不是為了找出系統(tǒng)中所有的
bug
而設計的,測試用例作用應該盡可能的覆蓋系統(tǒng)的功能。在周毅的文章中,原話:一個好的測試用例是在于它能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯誤。在這個觀點上,我并不怎么同意,由于公司的測試狀況不同,周毅的想法無法完全在我們公司進行開展工作。現(xiàn)在很多小型的公司這個軟件開發(fā)流程還不夠成熟,測試的工作往往會被忽率,不是測試資源配備出問題,就是測試太過匆忙,很難完全執(zhí)行完整的測試流程。
在這樣的情形下,測試的重點不在于找出
bug
,而是為了對設計用例覆蓋的功能保證其準確性,讓客戶在執(zhí)行操作中不發(fā)生錯誤。換句話說,測試的目的是為了讓客戶不發(fā)現(xiàn)
bug
,而不是因為尋找
bug
才進行測試。
這樣,測試設計人員就可以站在客戶的角度上,根據(jù)客戶的正常操作和誤操作作為設計的依據(jù)來設計用例;這個比站在純粹為了尋找系統(tǒng)
bug
的角度來設計用例,會工作更加輕松,效果也更好。
所以,對用例覆蓋功能點就顯得非常重要。當然,測試用例能夠發(fā)現(xiàn)更多的未發(fā)現(xiàn)的錯誤的確是一件非常好的事情,但是,鑒于目前中小公司的測試狀況和開發(fā)流程的成熟度,很難做到。在我們公司,我把“
一個好的測試用例是在于它能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯誤”作為測試小組今后目標。