当前位置: 首页 > 编程笔记 >

unit-testing 将模拟框架用作存根

子车睿
2023-03-14
本文向大家介绍unit-testing 将模拟框架用作存根,包括了unit-testing 将模拟框架用作存根的使用技巧和注意事项,需要的朋友参考一下

示例

术语“模拟”和“存根”经常会变得混乱。造成这种情况的部分原因是,许多模拟框架还提供了对创建存根的支持,而没有与模拟相关的验证步骤。

可以像使用“使用存根提供罐头响应”示例中那样编写新类来实现存根,而可以使用模拟框架代替。

使用起订量:

var stub = new Mock<IRecordProvider>();
stub.Setup(provider => provider.GetRecords()).Returns(new List<Record> {
    new Record { Id = 1, Flag=false, Value="First" },
    new Record { Id = 2, Flag=true, Value="Second" },
    new Record { Id = 3, Flag=false, Value="Third" }
});

这实现了与手工编码存根相同的行为,并且可以通过类似的方式提供给被测系统:

var processed = sut.ProcessRecord(stub.Object);
           

 类似资料:
  • 本文向大家介绍unit-testing 使用模拟框架验证行为,包括了unit-testing 使用模拟框架验证行为的使用技巧和注意事项,需要的朋友参考一下 示例 当有必要验证被测系统和测试双打之间的交互时,将使用模拟。需要注意避免创建过于脆弱的测试,但是当测试方法只是编排其他调用时,模拟可能特别有用。 该测试验证了当被测方法被调用(ProcessRecord)时,where方法UseValue被调

  • You can use promtool to test your rules. # For a single test file. ./promtool test rules test.yml # If you have multiple test files, say test1.yml,test2.yml,test2.yml ./promtool test rules test1.yml

  • How can you ensure that your app continues to work as you add more features or change existing functionality? By writing tests. Unit tests are handy for verifying the behavior of a single function, me

  • 如何模拟AsNoTracking方法? 在下面的示例中,DbContext已经注入到服务类中,如果我从GetOrderedProducts方法中移除AsNoTracking扩展方法,它可以正常工作,但是with AsNoTracking测试失败,因为它返回null。我还试图模拟AsNoTracking以返回正确的值,但它不起作用。

  • 1. 前言 通过几个章节的学习,大家对于 Spring 已经有了初步的认知,我们通过案例练习,或者源码追踪,可以粗略的看到 Spring 框架初始化 bean 对象的过程,那么这个章节,我们模拟 Spring 框架的思路,来写一个类似 Spring 加载对象的案例,加深大家的印象。 2. 案例实现思路 2.1 步骤介绍 思路分析: 我们通过写过的案例可以知道: Spring 框架的容器 是一个接口