在開發(fā)中,我們常常會遇到跟蹤一些變量的值和某些方法的返回值,一般情況下大家都會選擇使用Command Window,這種方式需要通過輸入一些命令來查看,未免有些麻煩。TestDriven.NET 2.0為我們提供了一鍵操作的功能,讓我們可以隨時隨地的跟蹤方法的返回值等,而不用輸入任何命令。在普通的方法中TestDriven.NET 2.0也可以運行測試(Run Test),不管方法的作用域是public還是private,是實例方法還是static方法。如果測試方法是實例方法,它會使用默認的構(gòu)造函數(shù)創(chuàng)建一個類的對象,在執(zhí)行測試完成時再釋放掉該對象。如果方法有返回值,將會顯示在Output窗口中。運行下面的測試:
在運行測試的過程中,有時候需要調(diào)試跟蹤一些信息,如果使用NUnit,由于它沒有集成在IDE中,也無法設置斷點。在TestDriven.NET 2.0提供了以Debug模式進行測試,可以在測試代碼中設置斷點,并進行跟蹤,這時我們需要選擇Test with | Debugger菜單命令。
在運行測試過程中,有時候會有創(chuàng)建一些應用程序域,但并沒有被釋放,這樣會有部分程序集被加載該應用程序域中并且已經(jīng)鎖定,所以可能會造成編譯失敗。這時需要釋放掉一些測試進程來可以繼續(xù)編譯。在任務欄的右下角,所有的測試進程都會顯示在這里,點擊右鍵,選擇Stop菜單命令可以結(jié)束測試進程。
.NET Reflector是一個.NET平臺下的類瀏覽器和反編譯工具,我們可以用它來瀏覽程序集的類和方法,可以分析由這些類和方法生成的中間語言 (MSIL),相信大家都用過,但它仍然是作為一個獨立的工具存在的,在TestDriven.NET 2.0中它被很好的集成在了Visual Studio.NET IDE,通過右鍵菜單,可以直接使用.NET Reflector。
集成代碼覆蓋率分析工具
在做單元測試的時候,我們總是希望知道自己的代碼有多少覆蓋到了,哪些代碼是沒有測試到的,如果沒有安裝Visual Studio Team System,無法用Team Converage進行代碼覆蓋率的分析,這時使用大名鼎鼎的NConver是一個不錯的選擇,并且使用NconverExplorer可以去查看分析結(jié)果,所有這些仍然需要運行新的應用程序,TestDriven.NET 2.0把這一切都集成到了IDE中,可以在沒有安裝Team System的環(huán)境下使用Team Converage,也不用單獨安裝NConver。