一.Nunit不僅僅是一種單元測試工具,還是一種輔助敏捷開發(fā)的工具。
根據(jù)網(wǎng)上的資料情況,可以看的出,目前使用Nunit進行普通的單元測試(即寫一段代碼后,再在Nunit里面寫出相應(yīng)的測試代碼對這段開發(fā)代碼進行測試)不是很多,而且用它進行的TDD開發(fā)模式的多一些~
TDD開發(fā)模式是“測試驅(qū)動開發(fā)”的模式。即:是在開發(fā)之前,先寫單元測試代碼,這些測試代碼在運行的過程中,根據(jù)測試結(jié)果,寫開發(fā)代碼。
當(dāng)所有單元測試通過,開發(fā)代碼寫完了,這些代碼全是通過單元測試的代碼了。
“測試驅(qū)動開發(fā)”的方式是敏捷開發(fā)中的一種XP(Extreme Programming)極限編程的一種方式。
關(guān)于敏捷開發(fā)的簡介。
http://blog.csdn.net/wayne_ran/archive/2007/05/08/1601008.aspx
二.簡單比較兩種方式。
第一種:使用Nunit進行TDD(測試驅(qū)動開發(fā))模式測試開發(fā)。
TDD開發(fā)的兩個主要原則:
1.除非你有一個失敗的自動測試,否則永遠不要寫一行代碼。
2.阻止重復(fù)
它的優(yōu)點有:
1.(針對第一個原則)因為測試是嵌入在代碼必須滿足的需求中,如果沒有需求,沒有必要實現(xiàn)任何東西。所以這個原則阻止我們?nèi)崿F(xiàn)那些沒有測試和在解決方案中不需要的功能。
2.(針對第二個原則)說明了在一個程序中,不應(yīng)該包含重復(fù)的代碼。
第二種:使用Nunit進行普通單元測試模式
即:在寫好開發(fā)代碼后,再在Nunit里面寫測試代碼,針對對已經(jīng)實現(xiàn)功能的代碼進行進一步的單元測試。
優(yōu)點:
能夠保證所寫的代碼是正確的,通過測試的。
缺點:
1.會相應(yīng)延長開發(fā)時間,并給程序員帶來一定的測試工作量。(可能寫了100行的代碼后,還需要寫100行的代碼對那100行代碼進行測試)
2.無法體現(xiàn)出TDD開發(fā)模式的優(yōu)點。