2011年12月26日 星期一

單元測試工具的選擇

前言 
之前的文章介紹了單元測試的意義以及單元測試的範例,業界很多朋友知道我有在做單元測試,常問我:要選NUnit好?還是用Visual Studio內建的單元測試好?

這邊針對我的一些使用經驗,簡單的介紹一下測試相關工具的差異。

NUnit好,還是VS內建的單元測試工具好?
我之前的單元測試撰寫經驗,都是使用NUnit,原因很簡單:免費。 免費的重點在於,其他的工具對它的整合程度會比較高。

這邊所謂的其他工具,最重要的就是CI server。有很多的CI server也都是免費的,對這些open source的工具來說,NUnit是一個輕巧簡便,該有的都有的單元測試工具。

但,假設不管單元測試以外的相容性部分,我得說VS內建的單元測試大勝!

單元測試導入難在哪?難在很多步,第一步最難的就是dev的心理障礙。

dev的心聲:
  1. 測試程式?為什麼我寫code都沒時間了,還要我寫測試程式?
  2. 針對一個功能寫一份production code就夠吃緊了,還要寫好幾份測試程式來測這一份code?
  3. 程式碼一改,需求一改,原本只要改一份production code,現在要改1+N份程式?
  4. 測試程式有寫跟沒寫一樣,為什麼我還要新增一個專案,手刻一個測試的class,測試的方法,還要寫相關的輸入、驗證相關的輸出?每次都刻這個真的很浪費時間。

是的,單元測試導入最難的第一步,就是工程師覺得寫測試程式不夠方便、快速,是額外的負擔。



沒有留言:

張貼留言