''' </summary>
''' <remarks>
''' </remarks>
''' <history>
''' [TonyGong] 5/25/2006 Created
''' </history>
''' -----------------------------------------------------------------------------
<Test()> _
Public Sub FindMaxTest()Sub FindMaxTest()
'
Dim list1() As Int32 = {1, 3, 10, 4}
Dim list2() As Int32 = {1, 3, 4, 10}
Dim list3() As Int32 = {10, 3, 1, 4}
Dim list4() As Int32 = {-2, -1, -3}
Dim my As New Class1
'測試數組list1中的最大整數是不是10。
Assert.AreEqual(10, my.FindMax(list1))
'測試邊界值
Assert.AreEqual(10, my.FindMax(list2))
Assert.AreEqual(10, my.FindMax(list3))
'測試負數數組,數組中最大值應該是-1
Assert.AreEqual(-1, my.FindMax(list4))
End Sub
End Class
運行Nunit,結果如下:
這種方法的優點很明顯:由于測試代碼同被測試的方法放在一個類中,所以private等方法很容易被測試。但同時缺點也很明顯,該類會被寫得很復雜,估計很少會有人喜歡看這種代碼,而且萬一客戶不需要這些代碼的話,在最后部署的時候,關del測試代碼,估計也是個大問題。
2 每寫一個需要被測試的類,就寫當前工程下新建一個相應的測試類,名字可以在被測試類后面加上Test以示區別。
solution結構如下:
代碼就不寫了。
這種方法的優點是結構比較清晰,在比較小的工程中使用還算不錯,修改測試代碼也比較方法。缺點同樣是部署時刪除單元測試代碼比較麻煩,同時solution太大,有很多project時,有很大局限性。
延伸閱讀
文章來源于領測軟件測試網 http://www.kjueaiud.com/