不确定这是一个已知问题。我使用的是VS2012 RC (旗舰版)和Win8发布预览版。我已经创建了一个单元测试库(metro风格的应用程序),并编写了一个Unit Test,其中包括async/await关键字。但是,当我编译Unit Test项目时,Unit Test Explorer没有显示我编写的Test。如果我排除了async/await关键字,那么Unit Test Explorer就会出现在我刚刚编写的测试中。以前有没有人遇到过这个问题,或者只有我遇到过?
[TestClass]
public class UnitTest1
{
[TestMethod]
public async void SomeAsyncTest()
{
var result = await StorageFile.GetFileFromPathAsync("some file path");
}
}
发布于 2012-06-17 17:28:28
async
的单元测试方法必须返回Task
,而不是void
。
这是因为async void
方法很难跟踪:单元测试库没有简单的方法来确定测试是否完成。)这很难,但我认为这不是不可能的。您可以通过使用自定义SynchronizationContext
来完成此操作。)
https://stackoverflow.com/questions/11063108
复制相似问题