白盒测试——修正的条件/判定覆盖修正的条件/判定覆盖定义修正条件判定覆盖(ModifiedCondition/DecisionCoverage),简称MC/DC,要求在满足条件/判定覆盖的基础上,每个简单逻辑判定条件都应能够独立影响整个判定表达式。修正的条件/判定覆盖定义判定的计算结果相反。条件C的取值相反;条件C所在判定内的所有条件,除条件C外,其他条件的取值完全相同MC/DC首先要求实现条件覆盖、判定覆盖,在此基础上,对于每一个条件C,要求存在符合以下条件的两个用例:修正的条件判定覆盖问题描述:根据输入的三角形的三边确定最终三角形类型。(能否构成三角形,等腰、等边、还是普通三角形)。对该功能做修正的条件/判定覆盖的白盒测试案例案例分析【是否构成三角形】【是否特殊三角形】【是否一般三角形】程序代码案例分析条件T1:a+b<=cT2:a+c<=bT3:b+c<=aT4:a==bT5:b==cT6:a==c判定:分支1:T1||T2||T3分支2:T4||T5||T6分支3:T4&&T5流程图/执行分支/路径开始a+b<=c||a+c<=b||b+c<=aa==b||b==c||a==cFa==b&&b==cT不是三角形T一般三角形F等边三角形等腰三角形结束TFP1P2P4P3P5P6案例分析条件T1~T3的组合案例分析条件T4~T6的组合用例设计测试分析修正判定/条件覆盖继承了条件组合覆盖的优点。修正的判定/条件覆盖通过消除测试用例之间的冗余,达到降低测试用例规模的目的,但其分析过程仍然是较为繁琐的。谢谢大家!theend