为Document Client创建模拟

时间:2019-07-16 09:51:16

标签: moq azure-cosmosdb xunit

我正在使用xUnit和Moq编写单元测试。我正在测试的课程具有一个属性

public DocumentClient documentClient {get; set;}

我试图使用Moq来模拟该属性,并试图模拟DocumentClient的OpenAsync方法。这就是我创建Mock对象的方式。

var documentClientObj = new Mock<DocumentClient>();

但是我收到一条错误消息,提示“ System.NotSupportedException:要模拟的类型必须是接口或抽象或非密封类”

1 个答案:

答案 0 :(得分:0)

DocumentClient既不是抽象类,也不是接口。这意味着模拟库无法创建代理实现。如果您坚持使用该类,就不能嘲笑它。

但是,Cosmos数据库库中具有IDocumentClient类正在实现的DocumentClient接口。您应该切换到该位置,然后才能对其进行模拟。

相关问题