【发布时间】:2011-03-01 17:30:30
【问题描述】:
是否有(首选免费)工具可以分析方法中可能有多少种不同的组合?我目前正在重构一个有很多 if/switch 语句的方法,我很好奇这个方法有多少种可能的不同执行方式。
假设我有一个简单的方法:
public void DoSomething(bool flag1, int value)
{
if (flag1)
{
if (value > 0)
{
Console.WriteLine("Flag1 & value > 0");
return;
}
else
{
Console.WriteLine("Flag1 & value <= 0");
return;
}
}
elseif (value > 0 and value < 10)
{
Console.WriteLine("Flag1 is false and value between 0 & 10");
return;
}
if (value < 0)
{
Console.WriteLine("Flag1 = false & value <= 0");
return;
}
elseif(value = 0)
{
Console.WriteLine("Flag1 = false & value >= 10");
return;
}
Console.WriteLine("nothing else matched");
}
应该有 6 种可能的方式可以执行此方法。 我知道有一些工具可以为我计算这个数字(我相信 Visual Studio Ultimate 可以做到这一点,但不幸的是我只有专业版)。
也许有人知道可以做到这一点的好工具。
【问题讨论】:
-
在 Visual Studio 中启用代码覆盖,非常易于使用。选择项目->属性->代码覆盖率。
标签: c# .net code-coverage code-analysis