.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);
}
}
文章来源于领测软件测试网 https://www.ltesting.net/