我有一个服务IBlobService
:
public interface IBlobService
{
public Task<BlobInfo> GetBlobAsync(string name);
public Task<IEnumerable<string>> ListBlobsAsync();
public Task UploadFileBlobAsync(string filePath, string fileName);
public Task UploadContentBlobAsync(string content, string fileName);
public Task DeleteBlobAsync(string blobName);
}
下面是BlobService
类中GetBlobAsync
方法的实现:
public async Task<BlobInfo> GetBlobAsync(string name)
{
var client = _blobContainerClient.GetBlobClient(name);
var blobDownloadInfo = await client.DownloadContentAsync();
return new BlobInfo(blobDownloadInfo.Value.Content, blobDownloadInfo.Value.Details.ContentType);
}
我正在尝试弄清楚如何使用Moq来实现我的测试。我对Moq还比较陌生。有什么想法或指导吗?
我试着回顾这个博客https://devblogs.microsoft.com/azure-sdk/unit-testing-and-mocking/
但是我仍然发现自己被卡住了。我正在努力找出实现我的测试的最好方法。
1条答案
按热度按时间osh3o9ms1#
如果你想做一个单元测试来测试blobservice或者一个类 * 使用 *
IblobService
?如果它是一个使用
IBlobService
的类,则需要模拟IBlobService
就像这样