zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    [机房测试]11.11
    题解——[AHOI2013]作业(莫队)
    [机房测试]11.7
    [机房测试]11.6
    [机房测试]11.5
    [机房测试]11.4
    [机房测试]10.29
    [机房测试]10.28
    初学SPFA
    神奇的游戏
  • 原文地址:https://www.cnblogs.com/Tom-yi/p/8249976.html
Copyright © 2011-2022 走看看