Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# TaskWaiter.HandleNonSuccessAndDebuggerNotification(任务任务)_C#_Unit Testing_Moq_Mstest - Fatal编程技术网

C# TaskWaiter.HandleNonSuccessAndDebuggerNotification(任务任务)

C# TaskWaiter.HandleNonSuccessAndDebuggerNotification(任务任务),c#,unit-testing,moq,mstest,C#,Unit Testing,Moq,Mstest,我是MSTest的新手,在运行下面的测试时遇到下面的错误。尽管如此,我还是不能充分利用这个例外 请求你的帮助!我还附上下面的测试方法代码 [TestMethod] 公共异步任务GetReturnsAllSolutionsForAdminUser()的解决方案 { var storageService=new Mock(); AuthenticatedUsername=”xxx@yyy.com"; var mockStorage=new Mock(); var mockGeneralServic

我是MSTest的新手,在运行下面的测试时遇到下面的错误。尽管如此,我还是不能充分利用这个例外

请求你的帮助!我还附上下面的测试方法代码

[TestMethod]
公共异步任务GetReturnsAllSolutionsForAdminUser()的解决方案
{
var storageService=new Mock();
AuthenticatedUsername=”xxx@yyy.com";
var mockStorage=new Mock();
var mockGeneralServices=new Mock();
var mockDesignerEngine=new Mock();
var mockExcelUploadService=new Mock();
var解决方案=新列表(
新[]
{
新解决方案
{
Id=“10000000-0000-0000-0000-000000000000”,
Name=“解决方案1”,
Description=“解决方案1的说明”,
ResourceGroups=new NamedItemList(new[]{new ResourceGroup{Name=“解决方案1:ResourceGroup 1”}}),
CreatedBy=”xxx@yyy.com",
CreatedOn=DateTime.Parse(“2018年5月5日”),
Version=“1.0.1”,
TaggingEnabled=true,
}
}
);
storageService.Setup(it=>it.ReadItemsAsync()).ReturnsAsync(解决方案);
var控制器=新的解决方案控制器(mockGeneralServices.Object、mockStorage.Object、mockDesignerEngine.Object、mockExcelUploadService.Object)
{
ControllerContext=新的ControllerContext
{
HttpContext=GetMockHttpContext(CloudSuiteRoles.AdminRole,CloudSuiteRoles.UserRole).Object
}
};
var result=await controller.Get()。将await(false)配置为JsonResult;
var items=结果。值为IEnumerable//
Assert.IsNotNull(项);
Assert.AreEqual(solutions.Count(),items.Count());
}

看不到测试中在哪里使用了
storageService
,也看不到它与测试对象的关系

您很可能打算
设置
模拟存储

替换

storageService.Setup(it => it.ReadItemsAsync<Solution>()).ReturnsAsync(solutions);
storageService.Setup(it=>it.ReadItemsAsync()).ReturnsAsync(解决方案);

mockStorage.Setup(=>u.ReadItemsAsync()).ReturnsAsync(解决方案);
因为这是被注入被测试控制器中的一个


错误是因为调用的asyc方法未被模拟,并且该方法无法流动到完成。

未查看测试中使用的
storageService
,以及它与测试对象的关系
storageService.Setup(it => it.ReadItemsAsync<Solution>()).ReturnsAsync(solutions);
mockStorage.Setup(_ => _.ReadItemsAsync<Solution>()).ReturnsAsync(solutions);