.NET平臺下單元測試的工具使用 單元測試工具
.NET平臺下進行單元測試的兩種工具:由KENT BECK 指導的NUnit和微軟自身的MSTest。這兩種工具各有優缺點。NUnit出現較早,支持的軟件平臺較多,但是不易于調試。是的,是的,我知道。你可以做一點點小的變動就可以改變這種情況,但是和MSTest比較起來,就差得遠了。MSTest與VSNET的集成較好,調試應用都非常方便。但是支持的軟件平臺就差了許多。比如持續構建,比較典型的應用:CVS+CruiseControl.NET+NAnt(或者MsBuild)+NUnit+NConver+FxCop的組合。當然ThoughtWorks也發布了一個MsTest的試用版本,但是集成的并不緊密。雖然微軟也提出了VSTS的集成應用,然而對中小型項目的應用,未免有點大馬拉小車的應用了。事實上,說它是大馬有點客氣了。這個家伙對于硬件的要求我是真的不敢恭維。在軟件開發的過程中,我們即需要MSTest的調試,又需要NUnit的持續集成功能,將兩個工具有機的整合在一起是可能的。
需要定義一個登陸系統的用戶類。該為接口如下:
根據測試驅動的原則,首先建立一個單元測試項目。
為該項目添加對NUnit.Framework.dll的引用。新建單元測試類?紤]到NUnit與MSTest用于測試的屬性標識并不相同,我們需要更改測試類命名空間的聲明。
命名空間聲明
using Microsoft.VisualStudio.TestTools.UnitTesting;
#else
using NUnit.Framework;
using TestClass = NUnit.Framework.TestFixtureAttribute;
using TestInitialize = NUnit.Framework.SetUpAttribute;
using TestCleanup = NUnit.Framework.TearDownAttribute;
using TestMethod = NUnit.Framework.TestAttribute;
#endif
這樣,標識單元測試方法可以采用統一的屬性了。
UserTest
[TestClass]
public class UserTest
{
[TestMethod]
public void LoginTest()
{
User user = User.Login("姜志輝","密碼,哈哈");
Assert.IsTrue(user!=null);
}
}
文章來源于領測軟件測試網 http://www.kjueaiud.com/