VS2015+NUnit+OpenCover 完成单元测试代码覆盖率测试
1.VS2015+NUnit+OpenCover 完成单元测试代码覆盖率测试
https://download.csdn.net/download/qq_39441918/10522539
2.*注意测试容器类型 MSTEST 和 NUNIT TEST两类 【OpenCover 生成测试报告文件 >> OpenCover.Console.exe 生成HTML报告】
A.如果使用 Microsoft.VisualStudio.QualityTools.UnitTestFramework 在VS2015开发工具中可以看到覆盖率
1. https://www.cnblogs.com/kelelipeng/p/10537203.html (基于Visual Studio .NET2015的单元测试 OpenCover)
2. 使用MSTEST生成测试报告文件 ---成功实例
runnuit1.bat
REM Nunit 生成方式
REM "D:\Work\Wind.CloudFile\CoudFileTMPNew\Wind.CloudFile.WebNew\dev\src\packages\OpenCover.4.6.166\tools\OpenCover.Console.exe" -target:"runnuit.bat" -targetargs:"/nologo /noshadow" -register:"user" -filter:"+[UnitTest*]*" -output:".\results.xml"
REM MSTEST *** 生成方式 ***
"D:\Work\Wind.CloudFile\CoudFileTMPNew\Wind.CloudFile.WebNew\dev\src\packages\OpenCover.4.6.166\tools\OpenCover.Console.exe" -target:"C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\MSTest.exe" -targetargs:"/testcontainer:unittest.dll" -register:"user" -filter:"+[UnitTest*]*" -output:".\results111.xml"
--reportgenerator
reportgenerator -reports:*.xml -targetdir:./report
//参考
https://stackoverflow.com/questions/8534562/opencover-output-with-mstest-analyses-same-assembly-twice
[TestClass]
public class A
{
[TestMethod]
public void Test01()
{
Test tt=new Test();
Assert.AreEqual(2,tt.Max(1,2));//Microsoft.VisualStudio.QualityTools.UnitTestFramework
}
}
3. 开启右键菜单创建单元测试选项(Create Unit Tests) 的方法
https://blog.csdn.net/tozhangjl/article/details/30740167?utm_source=blogxgwz7
2.如果使用 Nunit 测试 在VS2015开发工具中不可以可以看到覆盖率 【nunit3-console.exe生成报告>> OpenCover.Console.exe 生成HTML报告】
1. VS2015+NUnit+OpenCover 完成单元测试代码覆盖率测试
https://blog.csdn.net/fwj380891124/article/details/52032336
2.
Jenkins结合.net平台工具之Opencover
http://www.cnblogs.com/tylerzhou/p/9076386.html
Getting code coverage from your .NET testing using OpenCover.
https://www.codeproject.com/articles/677691/getting-code-coverage-from-your-net-testing-using
[TestFixture]
public class A
{
[Test]
public void Test01()
{
Test tt=new Test();
Assert.AreEqual(2,tt.Max(1,2));//Microsoft.VisualStudio.QualityTools.UnitTestFramework
}
}
--成功实例
--runnuit.bat
"D:\Work\Wind.CloudFile\CoudFileTMPNew\Wind.CloudFile.WebNew\dev\src\packages\NUnit.ConsoleRunner.3.8.0\tools\nunit3-console.exe" "./UnitTest.dll"
--cover.bat -filter:"+[UnitTest*]*" 这边过滤你的生成程序的名称 如我的生成测试的 UnitTest.dll
"D:\Work\Wind.CloudFile\CoudFileTMPNew\Wind.CloudFile.WebNew\dev\src\packages\OpenCover.4.6.166\tools\OpenCover.Console.exe" -target:"runnuit.bat" -targetargs:"/nologo /noshadow" -register:"user" -filter:"+[UnitTest*]*" -output:".\results.xml"
--reportgenerator
reportgenerator -reports:*.xml -targetdir:./report
参考:
https://www.cnblogs.com/minerrr/p/9253960.html
VS2015+NUnit+OpenCover 完成单元测试代码覆盖率测试的更多相关文章
- MSTest/NUnit 单元测试 代码覆盖率试用 OpenCover 和ReportGenerator
VS自带是单元测试代码覆盖率(VS自带这个是最佳选择)需要企业版才有.很蛋疼...... 1.下载安装OpenCover 和ReportGenerator. 关于这2个是干啥的百度下.简单说就是可以分 ...
- Nunit NMock Ncover单元测试
Nunit中如何进行事务性单元测试 单元测试要求:单元测试方法并不真正去变更数据库,也就是说单元测试不依赖于数据库中的数据.那我们如何解决执行单元测试方法后,不变更数据库中数据呢? 一般的解决方案 ...
- unit vs2017基于nunit framework创建单元测试
unit vs2017基于nunit framework创建单元测试 一.简叙: 单元测试大型项目中是必备的,所以不可忽视,一个项目的成败就看是否有单元测试,对后期的扩展维护都带来了便利. 二.安装 ...
- 使用MVC 5、Web API 2、KnockoutJS、Ninject和NUnit开发、架构和测试Web应用程序
做一名微软软件开发人员就像在国际煎饼屋订早餐一样.每道菜都有一堆煎饼,你必须从各种各样的煎饼和糖浆口味中选择.对于web应用程序,解决方案堆栈是一组软件子系统或组件,用于交付功能完整的解决方案(无论是 ...
- pytest文档57-计算单元测试代码覆盖率(pytest-cov)
前言 我们在做测试的时候,经常遇到领导的灵魂拷问:你的测试用例覆盖率是多少,达到100%了么?你如何保证你的测试质量? 测试用例的覆盖率如何统计呢,如何知道开发的代码,我们都测到了,不会存在漏测的情况 ...
- pytest文档7-计算单元测试代码覆盖率(pytest-cov)
pytest-cov 先命令行安装 pytest-cov 2.10.1版本 pip install pytest-cov==2.10.1 环境要求:1.python3.6.6 版本备注:其它版本没试过 ...
- 如何在单元测试中测试异步函数,block回调这种
大概有四种方法: runloop 阻塞主进程等待结果 semphaore 阻塞主进程等待结果 使用XCTestExpectation 阻塞主线程等待(我用这个,xcode自带的,为啥不用) 使用第三方 ...
- iOS代码覆盖率测试工具
基于lcov-1.11的:CodeCoverage4iOS 阅读目录 环境准备 Xcode工程配置 构建并安装程序 收集代码覆盖率 过滤结果 合并多个Coverage.info⽂件⽣成覆盖率报告: ...
- Spring Boot 代码覆盖率测试
代码覆盖率测试是规范软件开发流程里一个必不可少的环节.一般都是在PG末尾阶段,伴随着IT自测产生. ↑以上,是自己yy出来的啊,反正我司是这样要求的.不跑覆盖率,鬼知道你在代码里夹杂了一些什么东西. ...
随机推荐
- __get(),__set(),__isset(),__unset()
__get(),__set(),__isset(),__unset() 在给不可访问属性赋值时,__set()会被调用读取不可访问属性的值时,__get()会被调用 当对不可访问属性调用isset() ...
- Angular18 RXJS
1 RX 全称是 Reactive Extensions,它是微软开发并维护的基于 Reactive Programming 范式实现的一套工具库集合:RX结合了观察者模式.迭代器模式.函数式编程来管 ...
- java中字符串的存储
在java中,不同的字符串赋值方法,其所在的地址可能不同也就导致,两个字符串的值看似相等可是在s1==s2操作时,其结果返回的却是false 例: String s1 = "Programm ...
- java中public static void main(String[] args)中String[] args代表什么意思?
这是java程序的入口地址,java虚拟机运行程序的时候首先找的就是main方法.跟C语言里面的main()函数的作用是一样的.只有有main()方法的java程序才能够被java虚拟机欲行,可理解为 ...
- 在控制台使用MySQL数据库
本篇内容介绍的是如何在控制台下使用MySQL数据库.首先需要安装MySQL数据库应用程序,然后找到MySql的Command Line Client进入之后你会看到,此处需要正确输入密码,否则会直接退 ...
- 在类中使用Response.Redirect()方法
问题来自:"我在app_code 定义了user.cs类:其中作了跳转:Httpcontect.Current.Response.Redirect("/c/index.aspx&q ...
- Data Base mysql备份与恢复
mysql 备份与恢复 为什么要备份: 由于系统使用到了MySQL 数 据库,所以每天的工作,就设计到了MySQL数据库的备份问题.但如果每天手工来做MySQL数据库的定时备份,工作量不说,时间还不 ...
- GTK+介绍
GTK+介绍 官方文档 GTK+ 学习 ### 在Ubuntu系统下 $ sudo apt-get intall gtk-3-examples GTK+ 依赖的函数库 Glib 提供了各种各样的语言特 ...
- 1003. Check If Word Is Valid After Substitutions
We are given that the string "abc" is valid. From any valid string V, we may split V into ...
- 洛谷P4462 [CQOI2018]异或序列(莫队)
打广告->[这里](https://www.cnblogs.com/bztMinamoto/p/9538115.html) 我蠢了…… 如果$a_{l} xor ...a_{r}=k$,那么只要 ...