UnitTest之Xunit
Unit Test
1.建立单元测试
新建一个类库项目,在Nuget中搜索xunit,选择 xUnit.net 和 xunit.runner.visualstudio 插件包安装。
xunit.runner.visualstudio(测试资源管理器),安装之后可以在 '测试--》窗口--》测试资源管理器' 打开测试资源管理器界面
* 如果想在CMD下调试,可以安装xunit.runner.console 插件包
2.xUnit.Net常用的标记(Fact 事实)
[Fact] 标记为测试方法,可设置参数:Skip,DisplayName,Timeout
[Fact(Skip ="跳过测试")]//临时忽略被标记的方法
[Fact(DisplayName ="通过测试")]
[Theory] 配合InlineData可以直接在一个方法中测试多组参数
3.xUnit.Net的断言(Assertions)
//Assert.Equal(resultModel.eAccountID, 1169676);
Equal 相等比较
NotEqual 不相等比较
NotEmpty 不为空
Contains ......
* Model比较可以用 CompareNETObjects,在 Nuget 中查询 CompareNETObjects 插件包安装
private CompareLogic compareLogic;
compareLogic = new CompareLogic();
var expectedResult = GetCaseModel();
ComparisonResult compareResult = compareLogic.Compare(expectedResult, new Case() { CaseID = 1, BankCode = "2" });
Assert.Equal(true, compareResult.AreEqual);
4.在XUnit中使用Moq模拟EntityFramework Core下的DbSet
在 Nuget 中查询 Moq 插件包安装
单元测试中使用Moq对EF的DbSet进行mock
刚用上Moq,就用它解决了一个IUnitOfWork的mock问题
代码地址:https://gitee.com/516877626/UnitTestXUnit.git
UnitTest之Xunit的更多相关文章
- Python必会的单元测试框架 —— unittest
用Python搭建自动化测试框架,我们需要组织用例以及测试执行,这里博主推荐Python的标准库——unittest. unittest是xUnit系列框架中的一员,如果你了解xUnit的其他成员,那 ...
- unittest基础篇1
转自http://blog.csdn.net/huilan_same/article/details/52944782 unittest是xUnit系列框架中的一员,如果你了解xUnit的其他成员,那 ...
- Selenium 4 Python的最佳测试框架
随着Python语言的使用越来越流行,基于Python的测试自动化框架也越来越流行.在项目选择最佳框架时,开发人员和测试人员会有些无法下手.做出选择是应该判断很多事情,框架的脚本质量,测试用例的简单性 ...
- 五大自动化测试的Python框架
1.Robot Framework 作为最重要的Python测试框架之一,Robot Framework主要被用在测试驱动(test-driven)类型的开发与验收中.虽然是由Python开发而来,但 ...
- [小北De编程手记] : Lesson 02 玩转 xUnit.Net 之 基本UnitTest & 数据驱动
关于<玩转 xUnit.Net>系列文章,我想跟大家分享的不是简单的运行一下测试用例或是介绍一下标签怎么使用(这样的文章网上很多).上一篇<Lesson 01 玩转 xUnit.Ne ...
- XUnit测试框架-Python unittest
选择 语言选择 本次个人作业我选择的语言是Python,了解学习Python有一段时间了但是一直没有练习,所以这次玩蛇,使用的版本是Python3.6. 开发工具选择 我选择的IDE是Pycharm, ...
- [小北De编程手记] : Lesson 06 玩转 xUnit.Net 之 定义自己的FactAttribute
xUnit.Net本身提供了标记测试方法的标签Fact和Theory.在前面的文章<Lesson 02 玩转 xUnit.Net 之 基本UnitTest & 数据驱动>中,也对它 ...
- [小北De编程手记] : Lesson 03 玩转 xUnit.Net 之 Fixture(上)
在使用xUnit.Net Framework构建单元测试或自动化测试项目的时候,无论是针对一些比较耗费资源的对象亦或是为了支持Test case预设数据的能力,我们都需要有一些初始化或是清理相关的动作 ...
- 使用xUnit为.net core程序进行单元测试(3)
第1部分: http://www.cnblogs.com/cgzl/p/8283610.html 第2部分: http://www.cnblogs.com/cgzl/p/8287588.html 请使 ...
随机推荐
- 配置LANMP环境(6)-- 安装APACHE与PHP配置
一.安装 Apache 2.4 安装:默认安装2.4版本 yum install httpd 修改配置 vim /etc/httpd/conf/httpd.conf 42行80端口改为 8080查看行 ...
- 持久化存储与HTTP缓存
本文主要学习一下一些高级的HTTP知识,例如Session LocalStorage Cache-Control Expires ETag 其实主要就是涉及到了持久化存储与缓存的技术 在此之前已经学习 ...
- 小程序swiper组件的bindchange方法重复执行问题
这是官方文档的说法给出了swiper组件一直来回滑动的bug原因 以下是修正方法 <swiper autoplay="{{autoplay}}" interval=" ...
- java常见问题 ——运行报错1
错误1 打印乱码 相关代码 response.getWriter().print(tbItem.toString()); response.setContentType("text/html ...
- luoguP2863 [USACO06JAN]牛的舞会The Cow Prom
P2863 [USACO06JAN]牛的舞会The Cow Prom 123通过 221提交 题目提供者 洛谷OnlineJudge 标签 USACO 2006 云端 难度 普及+/提高 时空限制 1 ...
- HGOI 20191029am 题解
Promblem A 小G的字符串 给定$n,k$,构造一个长度为$n$,只能使用$k$种小写字母的字符串. 要求相邻字符不能相同且$k$种字母都要出现 输出字典序最小的字符串,无解输出$-1$. 对 ...
- python celery 异步学习
1.运行redis 2.安装celery:pip install celery[redis] 3.vim task.py import time from celery import Celery b ...
- Anadi and Domino
C - Anadi and Domino 参考:Anadi and Domino 思路:分为两种情况: ①n<=6,这个时候肯定可以保证降所有的边都放上一张多米诺牌,那么答案就是m ②n==7, ...
- 在Spring Boot快捷地读取文件内容的若干种方式
引言: 在Spring Boot构建的项目中,在某些情况下,需要自行去读取项目中的某些文件内容,那该如何以一种轻快简单的方式读取文件内容呢? 基于ApplicationContext读取 在Spri ...
- Nginx事件管理之epoll模块
1. epoll 原理 假设有 100 万用户同时与一个进程保持着 TCP 连接,而每一时刻只有几十个或几百个 TCP 连接时活跃的(接收到 TCP 包),也就是说,在每一时刻,进程只需要处理这 10 ...