-1
爲什麼會這樣呢? 如果只完成函數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);
}
靜態代碼分析不能跨語義塊。那就是該工具無法通過'B'的'A'檢測代碼路徑。 –
如果我們在紙上做代碼覆蓋,該怎麼辦?像空轉一樣。 – Arslan
這與c#或C++有什麼關係? – CodingNinja