單元測試-理論篇[3] 軟件測試
3、 測試代碼并不是我的工作。
你的工作就是保證代碼能夠正確的完成你的行為,恰恰相反,測試代碼正是你不可缺少的工作。
4、 我并不清楚代碼的行為,所以也就無從測試。
如果你實在不清楚代碼的行為,那么估計現在并不是編碼的時候。如果你并不知道代碼的行為,那么你又如何知道你編寫的代碼是正確的呢?
5、 但是這些代碼都能夠編譯通過。
我們前面已經說過,代碼通過編譯只是驗證它的語法通過。但并不能保證它的行為就一定正確。
6、 公司請我來是為了寫代碼,而不是寫測試。
公司付給你薪水是為了讓你編寫產品代碼,而單元測試大體上是一個工具,是一個和編輯器、開發環境、編譯器等處于同一位置的工具。
7、 如果我讓測試員或者QA(Quality Assurance)人員沒有工作,那么我會覺得很內疚。
你并不需要擔心這些。請記住,我們在此只是談論單元測試,而它只是一種針對源碼的、低層次的,為程序員而設計的測試。在整個項目中,還有其他的很多測試需要這些人來完成,如:功能測試、驗收測試、性能測試、環境測試、有效性測試、正確性測試、正規分析等等。
8、 我的公司并不會讓我在真實系統中運行單元測試。
我們所討論的只是針對開發者的單元測試。也就是說,如果你可以在其他的環境下(例如在正式的產品系統中)運行這些測試的話,那么它們就不再是單元測試,而是其他類型的測試了。實際上,你可以在你的本機運行單元測試,使用你自己的數據庫,或者使用mock 對象。
總結:總而言之,單元測試會讓我們的開發工作變得更加輕松,讓我們對自己的代碼更加自信。無論是大型項目還是小型項目,無論是時間緊迫的項目還是時間寬裕的項目,只要代碼不是一次寫完永不改動,編寫單元測試就一定超值,它已成為我們編碼不可缺少的一部分。
文章來源于領測軟件測試網 http://www.kjueaiud.com/