qileilove

blog已经转移至github,大家请访问 http://qaseven.github.io/

5分钟实现VS2010整合NUnit进行单元测试

 1、下载安装NUnit(最新win版本为NUnit-2.6.0.12051.msi) http://www.nunit.org/index.php?p=download
  2、下载并安装VS的Visual Nunit 2010 插件  http://visualstudiogallery.msdn.microsoft.com/c8164c71-0836-4471-80ce-633383031099
  注:可通过VS的“视图”->“其他窗口”找到并打开该插件(快捷键:Ctrl+F7)
  3、新建测试项目UnitTestApp(示例为简单的控制台应用程序),引入nunit.framework类库(默认安装后文件所在路径:C:\Program Files \NUnit 2.6\bin\framework\nunit.framewor.dll)
  4、添加Calculator类,实现一个简单加法和获取单例方法
namespace UnitTestApp
{
public class Calculator
{
public int Add(int a, int b)
{
return a + b;
}
private static readonly object objSync = new object();
private static Calculator instance = null;
public static Calculator GetInstance()
{
if (instance == null)
{
lock (objSync)
{
if (instance == null)
{
instance = new Calculator();
}
}
}
return instance;
}
}
}
5、新增NUnitTest类进行单元测试
using NUnit.Framework;
namespace UnitTestApp
{
[TestFixture]
public class NUnitTest
{
[Test]
public void AddTest()
{
var calc = new Calculator();
var result = calc.Add(1, 1);
Assert.AreEqual(2, result);
}
[Test]
public void AddTestFailure()
{
var calc = new Calculator();
var result = calc.Add(1, 1);
Assert.AreEqual(10, result);
}
[Test]
public void SingtonTest1()
{
var calc = Calculator.GetInstance();
Assert.IsNull(calc);
}
[Test]
public void SingtonTest2()
{
var calc1 = Calculator.GetInstance();
var calc2 = Calculator.GetInstance();
Assert.IsTrue(object.Equals(calc1, calc2));
}
}
}
  编译控制台项目,点击Visual Nunit 插件的“Run”按钮,然后一切清静了。
  注:在上面的代码中引用 NUnit.Framework,使用TestFixture标注这是用于测试的类,在其中使用 Test表示具体的测试用例。可以看到单元测试中最重要的是断言,其他完全交给框架自动化。测试结果可以通过插件及时看到:

posted on 2014-06-25 11:27 顺其自然EVO 阅读(218) 评论(0)  编辑  收藏 所属分类: 测试学习专栏


只有注册用户登录后才能发表评论。


网站导航:
 
<2014年6月>
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345

导航

统计

常用链接

留言簿(55)

随笔分类

随笔档案

文章分类

文章档案

搜索

最新评论

阅读排行榜

评论排行榜