c# - Visual Studio 中的部分行代码覆盖率

标签 c# code-coverage

我在 .NET 工具 (CodeCoverage.exe) 中遇到了有关代码覆盖率测量的问题 下面是我的代码:

public static void test1(int a)
{
    if (a > 0 && a < 3)
    {
        Console.Write("Hello world");
    }
    else
    {

    }
}

我尝试使用诸如

之类的测试用例

案例1:

test1(1); true - true
test1(-4); false - true 

结果是上面的代码被完全覆盖。但有了测试用例:

情况2:

test1(1); true - true
test1(5); true - false

结果是上面的代码是部分覆盖的。
你能解释一下案例1和案例2之间的区别吗?我认为这两种情况都涵盖分支 If-Else
谢谢

最佳答案

情况 1 - 仅评估第一个条件,不必评估第二个条件。 情况 2 - 由于第一个条件为真,因此必须评估第二个条件。

关于c# - Visual Studio 中的部分行代码覆盖率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50741139/

相关文章:

C#构造函数泛型参数推断

javascript - 是否有任何用于在服务器端运行的脚本的 Javascript 代码覆盖工具(无浏览器)

build - 从Gradle构建的EMMA中排除类

ios7 - 使用Xcode5,iOS7模拟器和XCTest生成gcda文件

c# - .NET Core 中使用 NTS 几何体批量插入

c# - 调用在docker中运行的不安全的GRPC服务

c# - 找不到命名空间 - 使用 TFS 构建

c# - TableLayoutPanel 更新滞后

azure - 我可以从 Azure 上的部署生成代码覆盖率吗?

c# - 是否可以在没有代码覆盖工具作为入口点的情况下收集代码覆盖数据?