分三种类型:
基于状态的行为出现错误的三种原因:
以下是状态图和软件中可能发生的故障。
n:表示转换次数(也用于测试深度)
1次转换覆盖率/0次切换覆盖率 = 执行的转换数/状态模型中的转换总数
2次转换覆盖率/1次切换覆盖率 = 执行的两次转换的序列数/状态模型中两次转换的序列总数
状态-事件覆盖程度 = (状态数-执行的事件对)/(状态数*事件数)
故障类别 | 合法测试用例 | 非法测试用例 | 边界值分析 | 更深层次的测试 |
---|---|---|---|---|
额外状态 | + | + | + | |
遗漏状态 | + | - | ||
破坏性状态* | - | +/- | +/- | |
重复防护 | - | +/- | - | |
防护为false的转换 | - | - | + | - |
相互矛盾的转换 | + | - | - | - |
遗漏或错误转换 | + | + | + | +/- |
遗漏或错误动作 | + | - | - | +/- |
遗落或错误事件 | +/- | |||
隐含路径 | - | + | + | +/- |
-:检测出故障的希望很渺茫
+:检测出故障的概率很大
+-:检测出故障的概率很小
*:进行更深层次的测试可能不足以检测出破坏性状态
步进方式; 重置选项; 状态设置; 状态、转换、输入、输出与事件进行唯一性编码; 转换跟踪。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。