1.BUG的生命周期
- 每个公司,每一个工具对bug生命周期的定义是不一样的。下面是一个常见的例子:
- 测试人员应该跟踪一个Bug的整个生命周期,从Open到closed的所有状态。
- BUG状态转换图:
- new: 是发现的Bug,未经评审决定是否把指判给开发人员进行修改。
- Open:确认是BUG,并且认为需要进行修改,指派给相应的开发人员;
- Fixed: 开发人员进行修改后标识成修改状态,有待测试人员的回归测试验证。
- Rejected: 如果认为不是Bug,则拒绝修改;
- Delay: 如果认为暂时不需要修改或暂时不能修改,则延后修改。
- Closed: 修改状态的Bug经测试人员的回归测试验证通过,则关闭Bug。
- Reopen: 如果经过Bug仍然存在,则需要重新打开Bug,开发人员进行修改。
- 无效的bug: open->closed open-rejected-closed
- 测试人员新发现的Bug,必须由测试组长评审后才决定是否Open并分派给开发人员。测试人员Open的Bug可以直接分派给Bug对应的程序模块的负责人,也可以要求都先统一提交给开发主管,由开发主管审核后再决定是否分配给开发人员进行修改。Bug的跟踪以及状态变更应该遵循的一些基本原则:
- 测试人员对每一个缺陷的修改必须重新取一个包含更改后的代码的新版本进行回归测试,确保相同的问题不在出现,才能关闭缺陷。
- 对于拒绝修改和延迟修改的Bug,需要经过包含测试人员代表和开发人员代表,用户方面的代表(或代表用户角度的负责人)的评审。
2.测试的执行和BUG管理
- 进行测试
- 打开待测试的系统
- 打开测试管理工具用例模块,开始执行用例;
- 发现bug!进行复现并确认Bug的复现步骤;
- 记录bug
- 沟通bug
- 验证以前提交的bug
- 确认本次完成
- 编写测试报告
- 执行测试时处理处理要做到测试用例和需求的覆盖外,还有临时发挥的能力,根据自己的经验,对测试的感悟及随机测试可以发现很多的测试用例无法发现的缺陷。
- 不能拘泥于测试用例或是已经有的测试方法,在测试执行过程中要不断总结测试方法和测试故障类型。
3.处理人际关系
- 如果碰到一个BUG,和开发人员产生冲突怎么办?
- 先检查自己的BUG描述是否清楚。
- 检查BUG的定级是否按照公司的标准来的。
- 可以站在用户的角度去说服开发人员。
- 不断提高自己的业务水平和技术水平。
- 和开发人员,产品经理商量这个BUG的解决方案。