確保你的Visual Studio中安裝了Team Tester組件(可選)
安裝後會在Visual Studio的菜單中多出一個“測試”
建立一個C#類庫項目作為demo,完成一個加法運算using System;
using System.Collections.Generic;
using System.Text;
namespace ClassLibrary1
{
public class Class1
{
public int mySum(int a, int b)
{
return a + b;
}
}
}
單元測試:在方法名mySum上單擊右鍵,在菜單中選擇“建立單元測試”,或者在Visual Studio的菜單中選擇“測試”--“建立測試”。
可自動建立一個測試專案,其中包含有對應的類和方法,解決方案如
自動產生的測試代碼如下Code
// 以下代碼由 Microsoft Visual Studio 2005 產生。
// 測試所有者應該檢查每個測試的有效性。
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;
using System.Text;
using System.Collections.Generic;
using ClassLibrary1;
namespace TestProject1
{
/**//// <summary>
///這是 ClassLibrary1.Class1 的測試類別,旨在
///包含所有 ClassLibrary1.Class1 單元測試
///</summary>
[TestClass()]
public class Class1Test
{
private TestContext testContextInstance;
/**//// <summary>
///擷取或設定測試上下文,上下文提供
///有關當前測試回合及其功能的資訊。
///</summary>
public TestContext TestContext
{
get
{
return testContextInstance;
}
set
{
testContextInstance = value;
}
}
附加測試屬性#region 附加測試屬性
//
//編寫測試時,可使用以下附加屬性:
//
//使用 ClassInitialize 在運行類中的第一個測試前先運行代碼
//
//[ClassInitialize()]
//public static void MyClassInitialize(TestContext testContext)
//{
//}
//
//使用 ClassCleanup 在運行完類中的所有測試後再運行代碼
//
//[ClassCleanup()]
//public static void MyClassCleanup()
//{
//}
//
//使用 TestInitialize 在運行每個測試前先運行代碼
//
//[TestInitialize()]
//public void MyTestInitialize()
//{
//}
//
//使用 TestCleanup 在運行完每個測試後運行代碼
//
//[TestCleanup()]
//public void MyTestCleanup()
//{
//}
//
#endregion
/**//// <summary>
///mySum (int, int) 的測試
///</summary>
[TestMethod()]
public void mySumTest()
{
Class1 target = new Class1();
int a = 0; // TODO: 初始化為適當的值
int b = 0; // TODO: 初始化為適當的值
int expected = 0;
int actual;
actual = target.mySum(a, b);
Assert.AreEqual(expected, actual);
}
}
}
更改初始值,運行測試。
選擇“測試”--“視窗”--“測試管理器”,選擇運行。
註:只有Visual Studio Team System版才有單元測試功能,各版本之間差異請參考:
Visual Studio 2005 產品線概述
Visual Studio 2005 Team System 版本比較