1、 下载和安装Nunit工具:

NUnit是一款堪与JUnit齐名的开源的回归测试框架,供.net开发人员做单元测试之用,可以从www.nunit.org网站上免费获得,然后在系统中安装;

2、 在VS2010中做配置:

Ø 选择【工具】——【外部工具……】

Ø 点击【添加】,在<标题>和<命令>中分别填写名称和指定外部工具启动的exe

Ø 在【工具】下面可以看到刚添加配置的外部工具“Nunit2.6”,后面就可以直接通过VS这里来启动Nunit;

3、 单元测试的一般流程:

Ø 被测试的项目以及函数

Ø 新建一个项目,作为测试项目

Ø 一般我们新建测试项目,选择类库就够了,名称用被测试的项目后面加上Test;

Ø 这里,我们直接将生成的类改名成被测试的类,以后该被测试类的方法做的单元测试用例都可以放着这个测试类中

Ø 我们首先需要在测试项目中引用被测试的程序集和nunit framwork

Ø 被测程序集的引用

Ø nunit framwork的引用

做完后后,我们可以在测试项目的引用下面看到:

Ø 在测试类中添加“using Nunit.Framework”

Ø 设计和编写单元测试用例,我们需要注意:

² 我们使用的是nunit框架,所以在测试类中需要在添加[TestFixture]和[Test]来标示这是一个测试类和测试方法

² 测试方法的返回类型必须是void,方法参数为空

² 另外我们可以通过属性来做一些控制,以便使用更加灵活

² 用Assert断言来比对预期结果和实际结果

Ø 生成测试项目(也就是我们说的编译)

Ø 通过VS打开Nunit工具,【工具】——【Nunit2.6】

Ø 新建一个project,【file】——【New Project…】

Ø 选择路径和填写名称

Ø 在项目中,添加测试程序集,【Project】——【Add Assembly…】

我们可以看到三个程序集,被测试的程序集,测试程序集和nunitframework的

Ø Nunit 工具中展示的和我们设计的单元测试用例一致

Ø 运行后我们可以看到测试结果,红色表示失败、黄色表示未运行、绿色表示通过

² 失败的结果

² 忽略不运行的结果

C#单元测试Nunit小结(20141018)的更多相关文章

  1. C#单元测试Nunit小结

    1. 下载和安装Nunit工具: NUnit是一款堪与JUnit齐名的开源的回归测试框架,供.net开发人员做单元测试之用,可以从www.nunit.org网站上免费获得,然后在系统中安装: 2. 在 ...

  2. Unity 单元测试(NUnit,UnityTestTools)

    在软件开发中单元测试是非常重要的一个环节, =.=盘子脸去了几家公司都没有单元测试这个概念. 我们的系统虽然从代码看上是分离的, 在多数情况下都需要依赖于其他模块来运行.(单元测试部分内容教我解决这个 ...

  3. 使用Junit对Spring进行单元测试实战小结

    Demo代码: @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = "classpath*:/ ...

  4. 单元测试NUnit 的文章

    请参考 https://www.cnblogs.com/ranh941/p/7629279.htmlhttps://blog.csdn.net/qincode/article/details/1831 ...

  5. 单元测试NUnit,mock组件NSubstitute,信号量SemaphoreSlim,异步lock等例子

    public class LockTest { private IDatabase _database; private readonly Random _random = new Random(); ...

  6. Nunit NMock Ncover单元测试

    Nunit中如何进行事务性单元测试   单元测试要求:单元测试方法并不真正去变更数据库,也就是说单元测试不依赖于数据库中的数据.那我们如何解决执行单元测试方法后,不变更数据库中数据呢? 一般的解决方案 ...

  7. 好代码是管出来的——.Net Core中的单元测试与代码覆盖率

    测试对于软件来说,是保证其质量的一个重要过程,而测试又分为很多种,单元测试.集成测试.系统测试.压力测试等等,不同的测试的测试粒度和测试目标也不同,如单元测试关注每一行代码,集成测试关注的是多个模块是 ...

  8. 使用xUnits来实现单元测试

    目录 前言 单元测试 xUnit 小结 附录 前言 从开始敲代码到现在,不停地都是在喊着记得做测试,记得自测,测试人员打回来扣你money之类的,刚开始因为心疼钱(当然还是为了代码质量),就老老实实自 ...

  9. 我的TDD实践---UnitTest单元测试

    我的TDD实践---UnitTest单元测试 “我的TDD实践”系列之UnitTest单元测试 写在前面: 我的TDD实践这几篇文章主要是围绕测试驱动开发所展开的,其中涵盖了一小部分测试理论,更多的则 ...

随机推荐

  1. 20135320赵瀚青LINUX第二章读书笔记

    第二章-从内核出发 获取内核代码 使用git 获取最新提交到版本树的一个副本 $ git clone git://git.kernel.org/pub/scm/linux/kernel/git/tor ...

  2. linux 块设备-整理(一)

    1. 基本概念: linux设备驱动开发详解(宋宝华): 字符设备与块设备 I/O 操作的不同如下. (1)块设备只能以块为单位接受输入和返回输出,而字符设备则以字节为单位. 大多数设备是字符设备,因 ...

  3. 正则表达式-RegExp-常用正则表达式

    正则表达式-RegExp-常用正则表达式   作者:nuysoft/JS攻城师/高云 QQ:47214707 EMail:nuysoft@gmail.com 声明:本文为原创文章,如需转载,请注明来源 ...

  4. 【cs231n】神经网络笔记笔记2

    ) # 对数据进行零中心化(重要) cov = np.dot(X.T, X) / X.shape[0] # 得到数据的协方差矩阵 数据协方差矩阵的第(i, j)个元素是数据第i个和第j个维度的协方差. ...

  5. RNAseq 流程

    https://github.com/twbattaglia/RNAseq-workflow

  6. Git 设置 SOCKS 代理

    $ export all_proxy=socks5://127.0.0.1:1080

  7. 使用cxf调用webservice

    1.引入maven包 <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt ...

  8. 深入浅出-Binding的源与路径

    1.把控件作为Binding源与Binding标记扩展<TextBox x:Name="textBox1" Text="{Binding Path=Value, E ...

  9. ACM ICPC 2010–2011, Northeastern European Regional Contest St Petersburg – Barnaul – Tashkent – Tbilisi, November 24, 2010

    ACM ICPC 2010–2011, Northeastern European Regional Contest St Petersburg – Barnaul – Tashkent – Tbil ...

  10. JSON的多样格式

    //JSON – Properties  方便前台列表显示 [{"年月":2002.01,"北京分公司":2214688,"河北分公司":3 ...