如何模拟Azure.Storage.Blobs的BlobContainerClient()?
我需要一些为Azure.Storage.Blobs的BlobContainerClient创建模拟对象以进行单元测试的示例。如何为下面的类创建Mock如何模拟Azure.Storage.Blobs的BlobContainerClient()?,azure,mocking,azure-storage-blobs,azure-blob-storage,Azure,Mocking,Azure Storage Blobs,Azure Blob Storage,我需要一些为Azure.Storage.Blobs的BlobContainerClient创建模拟对象以进行单元测试的示例。如何为下面的类创建Mock public sealed class BlobStorageProcessor { public BlobStorageProcessor(ILogger logger, BlobContainerClient containerClient) { this.logger = l
public sealed class BlobStorageProcessor
{
public BlobStorageProcessor(ILogger logger, BlobContainerClient containerClient)
{
this.logger = logger;
this.containerClient = containerClient;
}
}
您可以使用
Moq
库来创建模拟对象,并设置将由BlobStorageProcessor
使用的方法/属性
publicstaticblobcontainerclient GetBlobContainerClientMock()
{
var mock=new mock();
嘲弄
.Setup(i=>i.AccountName)
.返回(“测试账户名称”);
返回mock.Object;
}
在单元测试中,应该将GetBlobContainerClientMock
方法的结果注入BlobStorageProcessor
var blobStorageProcessor=新的blobStorageProcessor(
getLoggerLock(),
GetBlobContainerClientMock()
);
GetLoggerMock
可以通过类似于GetBlobContainerClientMock
的方式实现。请在此处阅读更多信息: