标签: java c# c++ code-coverage
为什么会这样, 如果仅对功能B进行单元测试,则功能A的覆盖率为50%。 即使我们将函数B的值取为(1,2,3) 它会覆盖第一个函数的if和else,但是为什么覆盖率仍然是50%?
Public int A(int a,int b) { if (a%2==0) return a; else return b; } Public int B (int a,int b,int c) { int val=A(a,b); val=A(val,c); }
答案 0 :(得分:0)
你一定做错了。它向我显示100%的覆盖率。这是测试(目的不是要表明这是否是一个好的测试,而是回答你的问题):
[TestMethod] public void SomeTest() { ClassLibrary1.Class1 csl = new ClassLibrary1.Class1(); csl.B(1, 2, 3); Assert.IsTrue(true); }
以下是该测试的覆盖结果: