C# 当某个特定的本地突出显示测试设置为异步时,是否有人在运行该测试时遇到问题?

C# 当某个特定的本地突出显示测试设置为异步时,是否有人在运行该测试时遇到问题?,c#,visual-studio-2013,mstest,C#,Visual Studio 2013,Mstest,我今天注意到,GUI中突出显示的测试方法上的Ctrl-R、Ctrl-T没有调试我刚才编写的测试,它看起来像: [TestMethod] public async void Test() { await asyncMethod(); } 项目已生成,但测试未运行。在任何地方都找不到失败消息或错误消息 如果我只是删除async关键字,那么一切都可以正常工作。这是怎么回事 在代码中,我正在等待异步调用。我不明白为什么试跑者不能应付它 编辑: 查看测试输出后,信

我今天注意到,GUI中突出显示的测试方法上的Ctrl-R、Ctrl-T没有调试我刚才编写的测试,它看起来像:

 [TestMethod]
 public async void Test()
    {
          await asyncMethod();
    }
项目已生成,但测试未运行。在任何地方都找不到失败消息或错误消息

如果我只是删除async关键字,那么一切都可以正常工作。这是怎么回事

在代码中,我正在等待异步调用。我不明白为什么试跑者不能应付它

编辑:

查看测试输出后,信息如下:

UTA007:类blah中定义的方法blah没有正确的签名。用[TestMethod]属性标记的测试方法必须是非静态的、公共的、返回类型为void的,并且不应接受任何参数。示例:public void Test.Class1.Test。此外,如果您正在运行异步单元测试,则返回类型必须为Task。示例:公共异步任务Test.Class1.Test2 =========发现测试完成:3发现0:00:00.1367583==========


我通常不看它,VisualStudio希望更频繁地向我显示生成输出和错误。

测试发现过程将不允许异步无效单元测试;我相信它会在输出窗口中发出警告。由于异步void方法被测试发现跳过,因此它实际上不会运行


对于异步单元测试,请使用异步任务而不是异步void。我在中有更多详细信息。

我再次检查,在输出窗口中没有看到任何警告。这是一个无声的失败,除非我是个盲人bat@IsaacBolinger:在下拉列表中,选择显示测试的输出。我发现:类UnitTestProject1.UnitTest1中定义的UTA007:MethodTestMethod1没有正确的签名。。。如果正在运行异步单元测试,则返回类型必须为Task。示例:公共异步任务Test.Class1。Test2@Thomas:由于您的问题不同,请创建一个最小的、可复制的示例并发布一个问题。