【发布时间】:2017-09-14 20:27:02
【问题描述】:
如何在 F# 中编写异步测试方法?
我引用了以下code:
[TestMethod]
public async Task CorrectlyFailingTest()
{
await SystemUnderTest.FailAsync();
}
这是我失败的尝试:
[<Test>]
let ``Correctly failing test``() = async {
SystemUnderTest.FailAsync() | Async.RunSynchronously
}
【问题讨论】:
-
这是使用 NUnit 吗?
-
是的。我正在使用 NUnit。
-
您是否尝试过简单地删除
async { }并使测试同步?即SystemUnderTest.FailAsync() |> Async.AwaitIAsyncResult |> Async.RunSynchronously,就是这样。或者,如果同步测试不符合您的要求,并且测试必须是异步的,那么我建议您查看Expecto,其中异步测试是常态而不是例外。跨度>
标签: unit-testing f# async-await