測試工具的選擇
在軟件測試中測試思維猶如內功心法,而測試工具則是外功招式,內外結合殺敵千里。本文結合ISTQB-AL-TM認證的知識體系,簡單總結一下對於測試工具的選擇:
一.商用工具?開源工具?還是定製工具?
1 > 商業工具:
商業工具的優勢:
首先,商業工具具備相對較高的測試準確性,測試結論在行業的認可度有所保障。比如,在通訊行業Sprient TestCenter 流量轉發性能測試工具的測試結果是能夠被運營商用戶所認可的,而自研的工具則不然。商業工具通常具備完善的支持:缺陷修改、功能改進、培訓等要求能夠得到供應商的響應,由此學習成本也相對較低。
商業工具的劣勢:
錢,還是錢狠。
2>開源工具:
開源工具的優勢:
採購成本不高、易於修改和擴展。
開源工具的劣勢:
工具的準確性不能被證實或者說不一定能被行業認可。開源工具通常爲了使用測試需要進行二次開發或者組合,具備相當的學習和開發成本;通常很難具備完善的支持。另外開源工具在修改和傳播問題上的合規問題不容忽視(GNU,GPL等協議規範要準守)。
3>定製工具:
定製工具的優勢:
適應當前的硬件平臺;適應特定的、專業的業務測試需要。在特定的場景和環境下高效運行。
定製工具的劣勢:
需要測試人員的開發能力和開發成本;定製工具往往依賴開發人員的工作成果(需要了解工具所依賴的特定產品接口),需要保持和開發人員的溝通協作(獲悉接口變更等),所以定製工具也存在相當的維護成本。
二.工具的投資回報(ROI):
1 >工具引入的首次成本和重複成本:
首次成本:
a.分析和定義工具需求。
b.供應商選型,評估工具對於測試需求的滿足度。
c.硬件軟件採購成本。
d.工具對於現有流程、環境的集成成本。
e.人員的學習成本。
重複成本:
a.持有成本:lcs許可、工具維護、持續學習成本。
b.改進、調整成本:讓工具適應軟件新的變化。
c.移植成本:工具遷移到不同環境上使用的適應成本。
2>測試管理人員應考慮的風險:
a.組織對於工具的適應和接受度。
b.對於測試件(自動化用例等)持續改進和維護的成本。
c.對於工具和自動化的依賴。(重視基於工具的Check,忽視測試探索及測試思維的修煉)
3>測試管理人員應瞭解工具引入的收益:
減少重複,提高測試效率 ,減少 Check帶來的成本:
1 >如功能迴歸(僅僅是Check部分,迴歸的波及依然需要測試探索)。
2 >冒煙測試(測試准入條件)。
3 >持續集成中的快速反饋。
特定類型的測試:
可靠性烤機、性能與壓力測試等
信息快速收集:
測試度量信息快速收集
附加收益:
自動化、工具利用程度高、代碼能力強有利於組織對於測試人員的認可。
(呵呵,測試人員的核心競爭力真的是這個嗎?)
三.工具的生命週期:
工具獲取:
分析需求;評估採購;集成到現有流程;學習和使用。
支持與維護:
使用問題根據解決;測試數據備份、恢復、輸出;
演變:
爲了適應新的測試需求,對於測試工具的改進、擴容。
退役:
當一個工具步入了生命週期的盡頭時,或簡單來講, 轉換到新工具的機會和收益已經超越了成本和風險時,它(舊工具) 將會退役。此時需要關注歷史測試數據的保存和歸檔。