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小结的更多相关文章

  1. C#单元测试Nunit小结(20141018)

    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. SpringBoot多数据源解决方案(转载)

    1.开源项目地址:MyBatis Plus & Dynamic Datasource Maven配置: <dependency> <groupId>com.baomid ...

  2. layui ri laydate的常规使用,并且日期最大不能超过当前日期

    laydate的常规使用,分为两种方式实现日期组件 一.在 layui 模块中使用 下载layui   地址 :https://www.layui.com/  引入资源路径 js 和 css 通过下面 ...

  3. C#实现Base64处理加解密

    using System;using System.Text; namespace Common{    /// <summary>    /// 实现Base64加密解密    ///  ...

  4. php随机获取数组里面的值

    srand() 函数播下随机数发生器种子,array_rand() 函数从数组中随机选出一个或多个元素,并返回.第二个参数用来确定要选出几个元素.如果选出的元素不止一个,则返回包含随机键名的数组,否则 ...

  5. js常用操作

    map操作:var map = {};map["a"] = 1;map["b"] = 2; console.log(Object.keys(map)); //[ ...

  6. vue 中一些API 或属性的常见用法

    prop 官方解释:Prop 是你可以在组件上注册的一些自定义特性.当一个值传递给一个 prop 特性的时候,它就变成了那个组件实例的一个属性. 通俗点讲就是:prop是父组件用来传递数据的一个自定义 ...

  7. bootstrap导航菜单做active判断

    先创建2个文件,index 和about,导入bootstrap的css <div class="container"> <ul class="nav ...

  8. fail2ban CentOS7安装

    一.安装1.安装yum install shorewall gamin-python shorewall-shell shorewall-perl shorewall-common python-in ...

  9. C#任务调度——LimitedConcurrencyLevelTaskScheduler

    这是参考大佬分享的代码写的有问题请提出指正,谢谢. using Serilog; using System; using System.Collections.Generic; using Syste ...

  10. js 获取dom 为null 测试

    <!DOCTYPE html> <html> <head> </head> <body> <h1> 这是H1 </h1&g ...