基于风险评估矩阵的单元测试用例设计原则
2020-02-09 本文已影响0人
佛系小懒
优先级和风险评估矩阵
风险等级(优先级)=事件发生的概率x事件发生后果严重性
优先级越高,需要确保越高的测试覆盖率。
具体用例设计主要通过等价类划分及边界值。
概率分类
频繁Frequent(A)91~100,
很可能Probable(B)61~90,
偶然的Occasional(C)41~60,
远期的Remote(D)11~40,
极小可能Improbable(E)1~10,
不可能Eliminate(F)0
严重性
灾难性的Catastrophic=1,
大量损失Critical=2,
短期损失Marginal=3,
极小损失(可交由监控程序)Negligible=4
优先级
严重Serious,必须立马停止活动,以进行处理的
高High,问题不能马上解决,必须定义严格的时间来解决这些问题。
中Medium,必须采取合理和实用的措施来减少风险
低Low,需要定期检查
风险评估矩阵
单元测试中高优先级覆盖场景
集合作为参数传递的方法
算法引擎
工具类方法
核心业务逻辑方法
简单的数据库查询谓词
高风险的服务
单元测试中暂且可不覆盖的
构造函数或属性(如果他们只是返回变量),测试集中在属性是否包含的验证。
配置常量,只读的字段、配置枚举等。
引用的其他框架或库、默认参数
容器服务注册
异常消息
私有方法
复杂的SQL查询(超过3个join或group等),更适合用手动测试或者某种系统测试工具
复杂的多线程代码(调整到集成测试-性能测试)
调用另一个公用方法没有附加其他处理逻辑的方法