异步方法的代码覆盖率

Jac*_*cob 10 mstest code-coverage async-await c#-5.0 visual-studio-2012

当我在Visual Studio 2012中分析代码覆盖率时,异步方法中的任何等待行都显示为未覆盖,即使它们显然正在执行,因为我的测试正在通过.代码覆盖率报告说,未覆盖的方法是MoveNext我的代码中没有的(也许是编译器生成的).

有没有办法修复异步方法的代码覆盖率报告?

注意:

我刚刚使用NCover运行覆盖,使用该工具覆盖数字更有意义.作为现在的解决方法,我将改用它.

Ste*_*ary 5

如果您正在等待的操作在等待之前完成,则这种情况最常见。

我建议您至少测试同步和异步成功情况,但是测试同步和异步错误与取消也是一个好主意。