1.对于源代码来说,通常对应的是CFG(Control Flow Graph,控制流图)。
Node coverage:执行每条语句
Edge Coverage:执行每个分支
Data flow Coverage: def是指变量赋值(左值),而uses对应的是变量的使用(右值)
①def情况:(1)出现在等式左边 (2)形参 (3)一个程序的输入 (4)一个调用函数的里面的真实参数并且值被修改
②use情况: (1)等式右边 (2)return语句的输出 (3)一段程序的输出
△如果一个节点同时存在定义和使用,DU pair 会出现单个环
2.不同语句块对应的CFG
①if Statement:
②while Statement
③ do-while Statement:
④switch-case Statement:
⑤try-catch Statement: