moq相关内容

如何使用 moq 测试抽象类中的具体方法?

过去,当我想模拟一个抽象类时,我只是在扩展抽象类的代码中创建一个模拟类,然后在我的单元测试中使用该类... 公共抽象类 MyConverter : IValueConverter{公共抽象对象 Convert(...);公共虚拟对象 ConvertBack(...) { ... }}私有密封类 MockedConverter : MyConverter { ... }[测试方法]public v ..
发布时间:2021-11-25 09:44:46 C#/.NET

.NET 核心使用 Xunit + Autofixture + Moq 编写更好的单元测试

在用于单元测试的 .NET Core 中,我使用 Xunit、Moq 和 Autofixture.但即使使用它们,我也看到我的单元测试变得复杂且需要时间. 也许有人可以告诉我是否有任何方法可以使这个测试更小? [事实]公共异步任务 Verify_NotAuthorised_NoServiceSendInvoked(){//安排var fixture = new Fixture().Cust ..
发布时间:2021-11-24 18:24:39 C#

测试 ASP.NET Core IMemoryCache 的正确方法

我正在编写一个简单的测试用例来测试我的控制器在调用我的服务之前调用了缓存.我正在使用 xUnit 和 Moq 来完成这项任务. 我面临一个问题,因为 GetOrCreateAsync 是一种扩展方法,框架无法模拟这些方法.我依靠内部细节来确定我可以模拟 TryGetValue 而不是我的测试(参见 https://github.com/aspnet/Caching/blob/c432e582 ..
发布时间:2021-11-24 15:12:49 C#/.NET

使用 Moq 抛出异常模拟 IMemoryCache

我正在尝试使用 Moq 模拟 IMemoryCache.我收到此错误: “System.NotSupportedException"类型的异常发生在Moq.dll 但未在用户代码中处理 附加信息:表达式引用的方法不属于模拟对象:x => x.Get(It.IsAny()) 我的模拟代码: 命名空间 Iag.Services.SupplierApiTests.Mocks{公共静态 ..
发布时间:2021-11-24 12:47:22 C#/.NET

使用 EF Core 和内存数据库进行单元测试

我使用的是 ASP.NET Core 2.2、EF Core 和 MOQ.正如您在以下代码中看到的那样,我有两个测试,并且同时运行,两个数据库名称均为“MovieListDatabase" 我在其中一个测试中出现错误并显示以下消息: Message: System.ArgumentException : 具有相同键的项目已经已添加.关键:1 如果我分别运行每一个,它们都会通过. 而且,在 ..
发布时间:2021-11-24 12:45:31 C#/.NET

带内部构造函数的 Moq 混凝土类

我正在尝试 Moq 一个具有内部构造函数的具体类,即在 MyAssembly 我有 public class MyClass {内部 MyClass(){}//其他方法包括工厂实例方法} 然后在我的“TestAssembly"测试中 var mock = new Mock(); 在 MyAssembly 中,我将以下内容添加到 AssemblyInfo.cs [程序集:Internals ..
发布时间:2021-11-24 12:00:50 C#/.NET

在 xunit 测试中模拟 HostingEnvironment.QueueBackgroundWorkItem

我有一个方法使用HostingEnvironment.QueueBackgroundWorkItem 我希望在此调用之前对某些行为进行单元测试,但是,测试失败并显示 System.InvalidOperationException :由于对象的当前状态,操作无效. 我怀疑我需要模拟 HostingEnvironment 但不知道如何操作. 解决方案 为了解决这个问题我定义了一个接口 ..
发布时间:2021-11-24 10:03:30 C#

访问moq对象时如何返回null?

我正在使用 Moq 库进行单元测试.现在我想要的是,当我第一次访问我的对象时,它应该返回 null,当我第二次访问它时,它应该返回其他内容. 这是我的代码 var mock = new Mock();mock.Setup(?????);mock.Setup(?????);var actual = target.Method(mock.object); 在我的方法中,我首先检查模拟对象是否 ..
发布时间:2021-09-14 19:08:51 C#/.NET

使用 Moq 模拟依赖属性

如果我有一个具有通过属性注入解析的依赖项的类,是否可以使用 Moq 模拟该属性的行为? 例如 公共类 SomeClass{//空构造函数公共 SomeClass() {}//依赖公共 IUsefuleService 服务 {get;set;}public bool IsThisPossible(Object someObject){//做一些事情//我想模拟Service和GetSome ..
发布时间:2021-09-14 19:01:18 C#/.NET

Moq 设置方法返回值

我有以下课程,我正在尝试测试 AddRecordToQueue 方法. 我正在使用 Moq 来模拟 AddRecordToQueue 方法中的 AddToQueue 方法的结果. AddToQueue 方法返回一个布尔值,所以我试图用真值模拟结果 公共类测试{私有只读 IRabbitMqConnection rabbitMqConnection;公共测试(IRabbitMqConne ..
发布时间:2021-09-14 18:57:28 C#/.NET