一、环境

操作系统:Windows 版本 10.0.15063 64位

集成环境:Visual Studio 2017 comminity(此后简称vs2017)

编程语言:C#

目标框架:.NET Framework 4.6.3

测试框架:NUnit3,涉及到的组件NUnit 3 Test Adapter(V3.8.0),NUnit VS Templates(V1.3),Test Generator NUnit extension(V2.0)以及NUnit(v3.8.1)。

单独列出强调:该博客操作只针对上述环境安装NUnit和使用NUnit成功,对其他人只作参考,即使你的环境和我上面描述的环境一模一样,仍有可能安装或者使用失败。请提前做好心理准备。

二、安装过程

step0

点击vs2017菜单栏中的“工具”---》选中“拓展和更新”。

step1

点击选项“联机”---》在右侧的搜索栏输入“Nunit”。

step2

完成step1操作后,请分别选中NUnit 3 Test Adapter,NUnit VS Templates和Test Generator NUnit extension,出现下图。标记1/2/3右上角出现一个小时钟。

step3

此时关闭vs2017所有界面。稍等1~3秒出现下图。



选中修改,等待。继续来图,最终安装成功后的界面。

step4

重启vs2017,重复step0的操作。点击选项“已安装”---》在右侧的搜索栏输入“Nunit”。出现下图,即说明Nunit前3个组件已安装好。

三、使用

step0

在vs2017中新建一个控制台项目UNitTest。

namespace UNitTest
{
class Program
{
public bool IsValid(int opt)
{
if (opt > 100)
{
return true;
}
return false;
}
public int AddData(int a, int b)
{
return (a + b);
} static void Main(string[] args)
{
}
}
}

step1

点击vs2017菜单栏中的“工具”---》选中“NuGet包管理器”---》选中“管理解决方案的NuGet程序包”。

step2

完成step1操作后,出现下图。



点击“浏览”,在搜索栏搜索“NUnit”,选中NUnit(红色标记M,此时版本v3.8.1),H处为你需要导入包的项目,选中你的目标项目(此时为测试项目UNitTest),点击“安装”(K处),确定安装。

step3

点击解决方案中的项目名(UNitTest)---》选中“添加”---》选中“新建项”。

step4

选中“Visual C#项”---》选中“Test”--->选中“NUnit Test Fixture”。测试类的名字“TestClass1.cs”

step5

此时还需要启动vs2017的测试资源管理器,否则无法运行测试类。

点击vs2017菜单栏中的“测试”---》选中“窗口”---》选中“测试资源管理器”。



完成上述操作,出现下图。



点击红标1是运行测试类中的所有测试,而红标2则是选择性运行测试类中的测试。

而如果只想对某个函数运行测试,而不运行其他测试。则是在测试类中选中测试函数名后右击,选择“运行测试”。比如我只想运行测试TestIsValid,而不运行测试TestAddData,选中TestIsValid,右键选择“运行测试”,出现下图。

step6

此时就可以通过新建的测试类"TestClass1.cs"对被测试项目UNitTest进行单元测试。

四、可能会遇到的问题

  • 问题1:出现“仅非测试项目和公共类或公共方法支持“创建单元测试””错误信息。

    截图:



    解决方法:新建测试类或测试项目对测试项目进行单元测试。

如何使用Nunit进行测试(Visual Studio 2017 comminity)的更多相关文章

  1. Windows10 + Visual Studio 2017 + CMake +OpenCV编译、开发环境配置及测试

    由于最近需要使用OpenCV,本人需要在自己的PC上使用OpenCV,因此最近一直在研究如何使用Visual Studio编译OpenCV源代码并搭建开发环境,折腾了很长时间,查阅了很多相关资料,终于 ...

  2. 深入研究Visual studio 2017 RC新特性

    在[Xamarin+Prism开发详解三:Visual studio 2017 RC初体验]中分享了Visual studio 2017RC的大致情况,同时也发现大家对新的Visual Studio很 ...

  3. Xamarin+Prism开发详解三:Visual studio 2017 RC初体验

    Visual studio 2017 RC出来一段时间了,最近有时间就想安装试试,随带分享一下安装使用体验. 1,卸载visual studio 2015 虽然可以同时安装visual studio ...

  4. Microsoft Visual Studio 2017 for Mac Preview 下载+安装+案例Demo

    目录: 0. 前言 1. 在线安装器 2. 安装VS 3. HelloWorld 4. ASP.NET MVC 5. 软件下载 6. 结尾 0. 前言: 工作原因,上下班背着我的雷神,一个月瘦了10斤 ...

  5. 最强 IDE Visual Studio 2017 正式版发布

    Visual Studio 2017 正式版发布,该版本不仅添加了实时单元测试.实时架构依赖关系验证等新特性,还对许多实用功能进行了改进,如代码导航.IntelliSense.重构.代码修复和调试等等 ...

  6. Visual Studio 2017正式版安装

    Visual Studio号称宇宙第一IDE, 2017年3月7日强大的微软帝国时隔两年多终于发布新一代IDE Visual Studio 2017.支持的功能简直不能太多,详情移步:https:// ...

  7. Visual Studio 2017 针对移动开发的新特性介绍

    欢迎大家持续关注葡萄城控件技术团队博客,更多更好的原创文章尽在这里~~ Visual Studio是世界上最好的IDE之一,如果是 .NET世界,那就没有之一了(^_^),而最近推出的Visual S ...

  8. Visual Studio 2017 for Mac 体验之Android.Form

    微软官方说明: Visual Studio 2017 for Mac Last Update: 2017/6/16 我们非常荣幸地宣布 Visual Studio 2017 for Mac 现已推出. ...

  9. visual Studio 2017 扩展开发(一)《向Visual Studio菜单栏新增一个菜单》

    最近有接触到关于visual studio 2017 扩展的开发,特此记录,也是为了督促自己去深入了解其原理. 开始开发Visual Studio 扩展,在这里我安装了visual studio 20 ...

随机推荐

  1. Kubernetes 路由问题&网络问题

    error 信息: kubectl 获取node的host地址 kubectl get pods -n $namespace -o wide 或者在Kubernetes的service中进行查看 ku ...

  2. New需谨慎

    New is Glue When you’re working in a strongly typed language like C# or Visual Basic, instantiating ...

  3. pm2 日常使用

    1. pm2 是什么? 日常开发中需要启动一个node项目,需要用npm run …,,如果终端被关掉,程序也就自动停止,有时候几个项目一起跑起来,好几个终端开着,个人不太喜欢,有一神器可以解决:pm ...

  4. [大数据从入门到放弃系列教程]在IDEA的Java项目里,配置并加入Scala,写出并运行scala的hello world

    [大数据从入门到放弃系列教程]在IDEA的Java项目里,配置并加入Scala,写出并运行scala的hello world 原文链接:http://www.cnblogs.com/blog5277/ ...

  5. python中mysql数据库的操作-sqlalchemy

    MySQLdb支持python2.*,不支持3.* ,python3里面使用PyMySQL模块代替 python3里面如果有报错  django.core.exceptions.ImproperlyC ...

  6. dedecmsv5.7 前台模版里输出变量

    如何在PHP文件查询出来的数据赋值给前端页面展示出来? 例如: PHP文件:agency.php require_once(dirname(__FILE__) . '/../../include/co ...

  7. MVC 简介

     是AOP (Aspect-Oriented Programming.面向侧 面的程序设计或面向方面的程序设计,是对面向对象程序设计的改进和扩展)内的概念 当 一 件事被细分为各个单元后,各个单元的复 ...

  8. Vue(七) 组件详解

    组件 (Component) 是 Vue.js 最核心的功能,也是整个框架设计最精彩的部分,当然也是最难掌握的. 组件与复用 组件用法 组件与创建 Vue 实例类似,需要注册后才可以使用.注册有全局注 ...

  9. JSP、EL表达式的入门(要用)

    2018-08-12   22:55:23 * JSP.EL表达式的入门(要用)    * Servlet/JSP  是两种动态的WEB资源的两种技术.   * 使用Servlet 生成HTML的页面 ...

  10. zookeeper基本概念

    1.集群角色 Leader,Follower,Observer Leader服务器是整个zookeeper集群工作机制中的核心 Follower服务器是zookeeper集群状态的跟随者 Observ ...