间歇性Bug复现+探索性测试学习与总结
1、Bug不可复现的原因
- 环境的变更造成了bug难以重现
- 没有找到真正会引发bug的操作序列(环境、代码和数据)
- bug必须使用特殊的数据才会出现,测试人员没有意识到他使用的数据的特殊性
- 测试人员由于错误操作,出现了误报
- 缺少操作录屏+log
2、常规的Bug复现技巧与方法
- 确保所有的步骤都被登记:
- 详细记录BUG产生的相关信息
- 判断是否特定条件和时间
- 针对特殊数据导致的偶现Bug可以通过
- 留意压力和负荷、内存和数据溢出相关的边界条件
- 考虑资源依赖性包括内存、网络和硬件共享的相互作用等
- 查看log/监控信息
3、探索性测试
什么是探索性测试
- 探索式测试是一种测试方法或者是测试思维。探索测试将学习,测试设计和测试执行整合在一起,形成一种测试方法。从整体考虑网站/App探索性进行测试,不涉及细节的进行测试。是一种经过深思熟虑的测试方式,没有测试脚本,可以使你的测试已有用例以外的场景。能发现更深层的Bug以及模块之间的问题。
- 误区1:探索性测试=临时/随机测试。其实这不太正确的,临时测试是完全随机的测试方法,它和自由式探索性测试比较接近,但探索性测试除了自由式类型外还有其他更有价值的模式与方向,探索性测试更多地是要正式确定要测试的方案的。
- 误区2:探索性测试=回归测试。探索性测试更注重的是思考和学习,不断发现新的问题,而版本的回归测试,是对原有的功能的保证,为持续迭代构筑安全网。重复的功能回归测试应该尽量用自动化的方式来完成,这样,才有足够的人力来进行探索性测试。
- 误区3:探索性测试用来评估软件质量。尽管探索性测试是一种有效的测试方法,但是它不意味着是一种全面覆盖的测试方法。如果要评估测试是否全面,可能需要其他的手段。
如何进行探索性测试
- 测试之前一定会有一个全局的方针战略,即整体的测试计划,它可以避免走错大方向、该测的部分没有覆盖到或者投入了大量时间到计划之外的部分。
- 测试一旦开始,没有固定的思路,测试人员不受任何先入为主的条条框框约束,根据测试途中获取的信息,指导各自走不同的路径,最终目的就是发现潜藏的缺陷。
探索性测试类型与方向
1、基于场景的探索性测试
2、基于策略的探索性测试
3、自由式探索性测试
4、基于反馈的探索式测试
探索性测试的优缺点
- 缺点
- 优点
探索性测试的价值
- 探索性测试可以加深测试人员对被测系统的了解
- 探索性测试可以用来找到深层次的BUG
4、开发排查的优化流程
-
1.先能稳定的复现错误。
-
2.设桩,打印出一些中间状态来分析,看到那一块儿错了。
-
3.摘除不相干的代码,慢慢迭代,定位错误。
-
4.如果发现调用第三方依赖跟你想的不一样,先读文档,然后再测试第三方依赖。
-
5.单元测试覆盖度
学习资源有点久了,忘记出处。后续找找补上