随机测试
- 资源有限:判定覆盖
- 资源充足:条件组合覆盖
- 黑盒测试和白盒测试不同的
1. 随机测试
- 比较简单的实现测试的自动化
- 使用随机数来进行测试(随机行为)
- 降低程序测试的效率
- 软件错误测试用例往往体现出聚集的特性
- 矩形分布
- 条带分布
- 散点分布
1.1. 输入域
- 通过分析文档,确定程序的输入域。
1.2. 随机数生成
- 很难获得真正的随机数
- 伪随机数算法:
- 平方取中法
- 随机数种子:random.org 站上的种子生成
1.3. 模糊测试(Fuzz testing)
- 主要用于软件安全性检测的部分。
- 使用一些非法的测试输入使得软件发生崩溃。
1.4. 随机测试原则
- 没有出现错误的测试用例附近出现错误的可能性相对低
- 出现错误的测试用例的附近出现错误的可能性相对高
- 我们应该尽量分散的选择测试用例
1.5. 自适应测试用例
- 选择一个测试用例
- 无误后,在大于指定距离的地方选择第二个测试用例
- 之后按照这种情况向下自动选择测试用例
1.6. FSCS-ART算法 固定候选集的自适应测试算法
1.7. 自适应测试用例问题
- 距离的决定
- 测试用例的分布问题(测试用例往往会聚集在边界上)
- 解决方案是扩大输入域,之后进行裁剪
1.8. 反随机测试用例
- 在控制台运行PICT::重定向到target,生成对应的组合测试用例(二维组合测试覆盖)
- 有的测试用例可能是无效的测试用例
- 生成组合用例值的时候需要考虑约束

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!