DotCover 报告奇怪的覆盖范围不足
DotCover is reporting a weird lack of coverage
谁能告诉我为什么 dotCover 会将附图中显示的 2 行标记为未覆盖?
鉴于这是一个很小的 class,它正在将覆盖率拉低到非常接近我们的失败百分比。
我知道没有太多可以继续下去,但我们似乎有足够的掩护,我只是不明白为什么它不喜欢这两行。
FWIW,我们正在使用 dotCover 2017.1,TeamCity 正在调用它
结束括号通常会在代码路径经过它们时得到 "hit"。看来这并没有发生。
看起来 queueClient.CompleteAsync 在您的测试中可能总是抛出异常。由于该方法永远不会正常完成,因此没有测试会通过非捕获路径。然后在 catch 中,它总是再次抛出,因此没有测试会正常退出该方法。因此跳过了两个端括号。
添加 queueClient.CompleteAsync 不抛出的测试。然后代码路径将包括非抛出路径,并正常退出该方法 - 跳过的行将被覆盖。
谁能告诉我为什么 dotCover 会将附图中显示的 2 行标记为未覆盖?
鉴于这是一个很小的 class,它正在将覆盖率拉低到非常接近我们的失败百分比。
我知道没有太多可以继续下去,但我们似乎有足够的掩护,我只是不明白为什么它不喜欢这两行。
FWIW,我们正在使用 dotCover 2017.1,TeamCity 正在调用它
结束括号通常会在代码路径经过它们时得到 "hit"。看来这并没有发生。
看起来 queueClient.CompleteAsync 在您的测试中可能总是抛出异常。由于该方法永远不会正常完成,因此没有测试会通过非捕获路径。然后在 catch 中,它总是再次抛出,因此没有测试会正常退出该方法。因此跳过了两个端括号。
添加 queueClient.CompleteAsync 不抛出的测试。然后代码路径将包括非抛出路径,并正常退出该方法 - 跳过的行将被覆盖。