async void модульные тесты нельзя запускать в Visual Studio 2012:
[TestClass]
public class MyTestClass
{
[TestMethod]
public async void InvisibleMyTestMethod()
{
await Task.Delay(1000);
Assert.IsTrue(true);
}
}
Если я хочу иметь асинхронный модульный тест, метод теста должен возвращать Task:
[TestMethod]
public async Task VisibleMyTestMethod()
{
await Task.Delay(1000);
Assert.IsTrue(true);
}
Почему это так? Не то чтобы мне абсолютно необходим async voidметод тестирования, мне просто любопытно. Visual Studio 2012 не выдает ни предупреждений, ни ошибок при создании async voidметода тестирования, даже если он не может быть запущен ...
async voidтесты, и в этой ссылке в некоторой степени подробно описано, как и почему это нужно поддерживать . См. Ответ ниже.