一、软件测试的生命周期
软件测试&软件开发的生命周期:需求分析---->测试计划---->测试设计/开发---->测试执行---->测试评估
需求分析:需求验证(合理性),分析需求,细化需求
测试计划:需要的人员(数量,类型),时间,测试目的,测试范围
测试设计/开发:根据需求提炼出的功能点,开发测试用例
测试执行:执行测试用例,提Bug,回归测试
测试评估:评估本次测试情况,Bug情况,测试用例执行情况
二、如何描述一个bug
为了开发人员嫩更好的定位错误位置,我们在给开发人员提Bug时,该如何描述呢?
我们要将bug们仅在一个bug管理器中,将bug分开描述,并且包含以下内容
1.测试版本
2.测试环境:包含硬件环境和软件环境,比如电脑系统,哪一个浏览器,手机品牌,系统等
3.测试步骤:
4.实际结果
5.预期结果:以用户的角度来描述,和需求保持一致
6.其他附件:错误截图,错误日志等
7.不要把多个bug放到一起
比如提交如下bug:
故障发生版本:VPS20210803_01 故障类别:兼容性 故障优先级:IE下界面显示异常,界面文字有重叠 故障描述:
测试环境:win7+IE8 测试步骤:1.打开VPS首页,点击“通知”链接,进入通知页面…
预期结果:通知页面显示正确,一页显示10条通知,按时间顺序倒序排列 实际结果:页面显示10条通知,通知顺序正确,但是页面文字有重叠
附件:上传错误截图,日志
三、如何定义bug级别
在开发和测试的争执中,一部分是究竟是不是bug?一部分是bug的级别有点高?那么如何定义bug级别呢?
Bug的定义每个公司都不一致,在定义级别之前需要查看公司规范
1.崩溃
阻碍开发或测试工作的问题;造成系统崩溃、死机、死循环,导致数据库数据丢失,与数据库连接错误,主要功能丧失,基本模块确实等问题,比如代码错误,死循环等
2.严重
系统主要功能部分丧失,数据库保存调用错误、用户数据流失,一级功能菜单不能使用但是不影响其他功能的测试。功能设计与需求严重不符,模块无法启动或调用,程序重启,自动退出,关联程序间调用冲突,安全问题,稳定性等。比如软件中数据保存后数据库中显示错误,用户所要求的功能缺失,程序接口错误等
3.一般
功能没有完全实现但是不影响使用,功能菜单存在缺陷但不会影响系统的稳定性。比如操作时间长,查询时间长,格式错误,边界条件错误,删除没有确认框、数据库表中字段过多等
4.次要
界面、性能缺陷,建议类问题,不影响操作功能的执行,可以优化性能的方案等。比如错别字,界面格式不规范,描述不清楚,提示语丢失,光标位置不正确等