我在 nUnit 中进行了API集成测试。当我在[TearDown]
中添加执行异步方法时,我发现await运算符不起作用...
[TearDown]
public async void TearDownAsync()
{
var response = await service.GetTasksAsync();
if (response.Count > 0)
{
}
}
在此示例方法中,GetTasksAsync()
已执行,但不会等待结果。当我将其更改为使用Wait()
时,它就可以了。
[TearDown]
public void TearDown()
{
var response = service.GetTasksAsync();
service.Wait();
if (response.Result.Count > 0)
{
}
}
我认为问题出在[TearDown]
。执行方法但是线程过早结束。在[Test]
方法中一切正常。这是[TearDown]中的错误还是我不正确地使用它?