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

最新文章

  1. 由用友NC刷新功能得到启示
  2. iOS 开发技术牛人博客
  3. php常用字符串函数小结
  4. [Maven]Maven详解
  5. php+mysql
  6. Oracle归档方式设置
  7. HiveContext VS SQLContext
  8. Unity3d-UI插件EZGUI官方视频教程
  9. POJ1177+线段树+扫描线
  10. 学 Android 是一种什么样的体验?
  11. poj 1456 Supermarket(并查集维护区间)
  12. JDK版本问题 发展史
  13. CSS 背景 background 讲解
  14. Java --- JSP2新特性
  15. ecshop商品页增加编辑器fckeditor
  16. c语言中的#ifdef和#ifndef
  17. Chrome的First Paint
  18. loadrunner中组合场景的应用
  19. [luogu P2521] [HAOI2011]防线修建
  20. Eureka的初识

热门文章

  1. 清除input输入框的历史记录
  2. Echarts 饼状图 字体重叠问题
  3. idea 启动ssm项目
  4. BZOJ5056 OI游戏[最短路树]
  5. Android Studio Terminal 常用命令
  6. Windows netsh命令的使用
  7. 将页面内搜索结果高亮显示(使用mark.js),且页面顶部定位到第一个搜索结果
  8. 【Android-NetWork】 判断是否连接网络,判断网络连接方式
  9. mybatis-动态sql-trim、where、set
  10. Git 如何针对项目修改本地提交提交人的信息