在数据流覆盖中,DU路径用于隔离在整个代码部分中定义和使用的变量。
在这样的函数场景中,如何编写涵盖变量x
的所有定义的测试用例?
因为它每次只分配一个新值,但在此函数的任何地方都没有使用:
Function x (int y, int z) {
int x = 0;
M = y + z;
My_Array = [1,2,3];
if (0 < M < 10)
x = My_Array[1];
else if (10 < M < 20)
x = My_Array[2];
else
x = 0;
}
答案 0 :(得分:1)
在测试中使用数据流分析的方法是
DU路径分析假定所有变量都已定义然后使用。如果在代码结束之前未使用变量,则代码中出现错误,我们会按上述方法对其进行更正。 DUK路径分析考虑“杀死”(重新分配变量或退出程序的位置),但它认为杀死不使用需要以相同方式纠正的错误。
所以,在你的例子中,我们消除了所有未使用的赋值,发现没有代码,没有可测试的东西,函数可以内联!