测试的日常笔记——(三)
软件缺陷的定义:
软件缺陷,常常又被叫做Bug,从产品内部看,缺陷是软件产品开发或维护过程中存在的错误、毛病等各种问题;
从产品外部看,缺陷是系统所需要实现的某种功能的失效或违背。
软件缺陷的种类划分:
1、功能不正常
2、软件在使用上感觉不方便
3、软件的结构未做良好规划
4、提供的功能不充分
5、与软件操作者的互动不良
6、使用性能不佳
7、为做好错误处理
8、边界错误
9、计算错误
10、使用一段时间所产生的错误
11、控制流程的错误
12、在大数据量压力下所产生的错误
13、在不同硬件环境下产生的错误
14、版本控制不良导致的错误
15、软件文档的错误
软件缺陷按照严重程度分为五种:
1.系统崩溃
2.严重
3.一般
4.次要
5.建议
软件缺陷按照优先级分为三种,修正由高到低:
1.高
2.中
3.低
软件缺陷按照Bug分为六级:
1级,系统崩溃:
定义:严重阻碍测试和开发工作
对应优先级:最高
具体可分为:
1.功能完全没有实现
2.应用闪退/崩溃无法运行
3.应用必现安全模式,无法运行
4.其他导致功能无法测试的问题
2级,至关重要:
定义:非阻碍用例执行的严重问题
对应优先级:高
具体可分为:
1.简单操作应用闪退/崩溃,卡死
2.数据丢失
3.严重影响系统,自身功能无法运行
4.严重数值计算错误
5.数据库损坏或无法保存配置
6.安全性问题(包括数据加密等)
3级,主要:
定义:功能存在缺陷,但不影响应用和系统的稳定性
对应优先级:中
具体可分为:
1.内存泄露(长时间不用的对象需要被回收,不被回收占内存)
2.功能实现逻辑覆盖不全面
3.非必现,但复现概率超过50%的闪退/崩溃和安全模式
4级,一般:
定义:对应用熟悉度高才能感知到的问题,对应用基本功能实现无影响
对应优先级:中
具体可分为:
1.轻微数值计算错误
2.功能实现有误,与产品文档不完全贴切
3.用户简单操作,即可明显感知的UI问题
5级,较小:
定义:界面,性能缺陷
对应优先级:低
具体可分为:
1.操作界面错误(提示显示规则,刷新规则是否与文档一致)
2.边界条件显示错误
3.提示信息和界面效果展示错误(包括未给出信息、信息提示错误等)
4.复现率低于5%的闪退/崩溃和安全模式
5.插件兼容和性能未优化问题
6.非正常操作导致UI显示异常
6级,建议:
定义:对于产品的意见或者建议
对应优先级:低
具体可分为:
1.对于产品设计方面的意见和建议
2.对于产品界面优化方面的意见和建议
3.对于产品需要优化增强用户体验方面的意见和建议
软件缺陷按照测试种类6分:
逻辑功能类
性能类
界面类
易用性类
安装
兼容性类
软件缺陷按照功能模块分:
注册
登录
购物车
分类
订单
个人信息
软件缺陷类型:
系统缺陷:
1、程序死循环
2 程序错误,不能执行正常工作或重要功能,使系统崩溃或资源不足
数据缺陷:
1 数据计算错误
2 数据约束错误
3 数据输入、输出错误
数据库缺陷:
1 数据库发生死锁
2 数据库的表、缺省值未加约束条件
3 数据库连接错误
4 数据库的表有过多的空字
接口缺陷:
1 数据通信错误
2 程序接口错误
功能缺陷:
1 功能无法实现
2 功能实现错误
安全性缺陷:
1 用户权限无法实现
2 超出限制错误
3 访问控制错误
4 加密错误
兼容性缺陷:
与需求规定配置兼容性不配合
性能缺陷:
1 未达到预期的性能目标
2 性能测试中出错,导致无法进行测试
界面缺陷:
1 操作界面错误
2 打印内容,格式错误
3 删除操作未给出提示
4 长时间操作未给出提示
5 界面不规范
建议(建议性的改进):
1 功能建议
2 操作建议
对BUG解决方案的七种描述:
无效的Bug:
By Design (说明:设计需求就是这样设计)
Duplicate (说明:这个问题别人已经发现)
Not Repro (说明:无法修复的问题)
有效的Bug:
Fixed (说明:问题被修复)
External (说明:外部造成的原因,如浏览器、操作系统)
Postponed (说明:发现的太晚,下一版本讨论是否解决)
Won’t Fix (说明:是个问题,但不值得修复)
Bug的生命周期:
新建:
测试员发现Bug并提交,我们将状态标注为新建
确认:
开发人员接受该Bug,将Bug状态修改为已分配(Assigned),表示已经认可并确认
解决:
开发人员解决Bug后,将Bug状态修改为解决,并发送给色是人员回归测试
重新验证:
测试人员对Bug进行回归测试
关闭:
测试人员确认解决Bug后,将Bug的状态修改为关闭,否则发送给开发人员重新修改
重新打开:
旧版本关闭的Bug再新版本重新出现,测试人员需要将其状态修改为重新打开
缺陷报告的组成与提交:
Bug处理流程图: