首页 > 解决方案 > 是否可以通过从 if 语句中取出表达式来减少测试用例?

问题描述

这可能是一个有点愚蠢的问题。
但我正在考虑这个问题。

例如,如果我为下面的代码提取测试用例
,它将有 32 个测试用例来实现 100% 的多条件覆盖

int foo(int a, int b, int c, int d, int e) 
{
  if (a && b || c && d || e)
    return 100;
  else
    return 200;
}

然后如果我将上面的代码更改为下面只需要 2 个测试用例即可实现 100% 的多条件覆盖
在这种情况下,我可以说我的测试代码实现了 100% 的多条件覆盖吗?

int foo(int a, int b, int c, int d, int e) 
{
  bool cond = a && b || c && d || e;
  if (cond)
    return 100;
  else
    return 200;
}

标签: c++cunit-testingcode-coverage

解决方案


推荐阅读