對于測試用例的復用,我想很多測試工程師都會(huì )非常有話(huà)說(shuō),系統變更頻繁,業(yè)務(wù)變化大,工作流不統一等等,很多現實(shí)存在的問(wèn)題,都阻礙了測試用例的復用發(fā)展進(jìn)程,但是金融風(fēng)暴下,越來(lái)越多的IT公司都在為了降低成本而做不屑的努力,如解決方案的產(chǎn)品化、搭建軟件系統的可復用平臺、開(kāi)發(fā)可復用的功能組件等等,毫無(wú)疑問(wèn)的,這些都會(huì )為了我們能夠提高測試用例的復用性打下了基礎,拋開(kāi)開(kāi)發(fā)人員的因素不談,而我們在這里也只針對如何從測試人員自身來(lái)提高測試用例的復用性來(lái)討論吧:
這里需要首先區分一下,是手動(dòng)測試用例還是自動(dòng)測試用例?
一、對于自動(dòng)測試用例,首先就是要改變腳本的開(kāi)發(fā)方法,如:
1.數據驅動(dòng)腳本:將測試數據從腳本中分立,保存在外部文件中,當數據發(fā)生變化時(shí),就不再需要更改代碼,腳本的維護成本也比較低
2.關(guān)鍵字驅動(dòng)腳本:把腳本中的檢查點(diǎn)和執行操作的控制都維護在外部文件中,同樣的,數據也會(huì )與代碼分離開(kāi),可以說(shuō)是結合了數據驅動(dòng)的腳本開(kāi)發(fā)方法,提高了測試腳本的共享和復用,缺點(diǎn)就是腳本開(kāi)發(fā)需要更多的編程經(jīng)驗和設計能力
二、對于手動(dòng)測試用例,那么我們就需要解決如下問(wèn)題:
1.測試用例的設計策略:測試策略無(wú)非有兩種,基于功能和基于風(fēng)險,之前也在論壇里提到過(guò),還有筒子回貼說(shuō),測試策略就是基于功能的,這點(diǎn)我不敢茍同,基于風(fēng)險的測試用例,往往才是最能被復用的,對于任何同類(lèi)型產(chǎn)品來(lái)說(shuō),無(wú)論如何進(jìn)行功能升級,其失效模式也一定大同小異,比如:汽車(chē)的失效模式之一——剎車(chē)失靈,這個(gè)不論是小汽車(chē)、三輪車(chē)、還是大卡車(chē),都會(huì )存在同樣的問(wèn)題,但是功能和性能上,三者之間的差異就比較大了,所以我才會(huì )提到我們需要在測試開(kāi)始前考慮這樣一種基于風(fēng)險的測試策略
2.業(yè)務(wù)抽象:對于測試來(lái)說(shuō),同樣需要跟研發(fā)的系統分析師有相當水平的測試設計師存在,他們的工作職責是分析系統需求、抽象業(yè)務(wù)用例、設計測試方案來(lái)指導測試用例的進(jìn)行,測試用例的復用也應該在這一環(huán)節被考慮,因為一條一條的去查找和審閱相同和相似的測試用例,對于龐大的系統來(lái)說(shuō),由于海量測試用例的存在,無(wú)疑為大海撈針,但是從更高層次的業(yè)務(wù)用例中去尋找相似性,一定是更快捷的方法,但這也同時(shí)需要清晰合理的、能夠與分解后業(yè)務(wù)用例對應的、可跟蹤可追溯的測試用例庫結構,基于此,我才把管理工具放在了第一位
文章來(lái)源于領(lǐng)測軟件測試網(wǎng) http://kjueaiud.com/