WebService方法的单元测试代码覆盖率,包括异步方法

时间:2013-12-20 09:05:42

标签: c# unit-testing asynchronous async-await mstest

我只需要有关包含异步方法的webservice方法的代码覆盖率的信息。

假设我有一个用WebService编写的方法MethodOne(string Value),我写了TestMethod来检查此方法的代码覆盖率,

当我运行Test并检查代码覆盖率时,它显示了类似

的内容

MethodOne(string) 100%

MethodOneAsync(string) 0%

MethodOneAsync(string,object) 0%

因为异步方法,我无法验证项目的实际代码覆盖率,我想在我的代码覆盖率中覆盖这些方法。

我在google上研究并阅读了很多文章,但没有得到有价值的代码,我也编写了以下代码,但它也无济于事。

public async void TestMethod1Async()
{
    bool isValue = await System.Threading.Tasks.TaskEx.Run(() => target.IsAccountDisabled(Guid.NewGuid()));
    Assert.IsFalse(isValue);
}

1 个答案:

答案 0 :(得分:3)

您可以编写异步单元测试来测试异步方法。

异步单元测试必须是async Task