什么是测试用例的有效性?
我们的测试用例有两个比较关键的部分:
1)调用被测代码:例如下面的RuleService.getLastRuleByClientId(ClientId)
2)进行结果Check:例如下面的AssertEqual(OrderId,"ABCD1234")
我们希望一组测试用例不仅能够“触发被测代码的各种分支”,还能够做好结果校验。
- 当业务代码出现问题的时候,测试用例可以发现这个问题,我们就认为这一组测试用例是有效的。
- 当业务代码出现问题的时候,测试用例没能发现这个问题,我们就认为这一组测试用例是无效的。
我们对测试用例有效性的理论建模是:
>> 测试有效性 = 被发现的问题数 / 出现问题的总数