NUnit 异步任务失败 "Method has non-void return value, but no result is expected"

NUnit async task fails "Method has non-void return value, but no result is expected"

我正在 运行使用 NUnit 3.10 在 ReSharper 中进行单元测试。

我在进行简单的异步测试时遇到此错误:

Method has non-void return value, but no result is expected

我的测试字面意思是:

[Test]
public async Task Nothing()
{
    await Task.Delay(100);
}

它在 documentation 中说这实际上是 运行 异步测试的正确方法。

对我来说,问题是没有使用 NuGet 包,而是引用了针对 .NET Framework 3.5 编译的 DLL。使用 NUnit 的 NuGet 包修复了它。

对于那些在 Unity 中工作的人,请确保您使用的是更新的测试框架包,至少 2.0.1。它目前在 pre-release 中,因此您需要在包管理器中启用 show pre-release

Documentation here 了解有关此功能的更多信息。