软件测试基础

一、基本术语

  常见术语:bug  defect  issue

  严重程度:Mistake→defect&bug→fault→failure

二、缺陷报告单

*Bug title/summary标题  对问题的简单概要描述

描述的问题,实际结果(不等于/有偏差)预期

如:视频播放的进度条挡住主界面

测试绩效考核:  bug数量,有效的bug率=(总bug-重复bug-不重现的bug)/总bug量

*Bug reproduce steps:重现步骤

1)按照重现步骤执行,可以看到描述的缺陷:

       a.如果bug是执行用例发现的,--用例执行步骤

       b.详细的实际结果 

       c.期望结果

2)Bug重现率:bug不是每次重现,一般重现3次再提交,例如10次中6次重现,重现率6%

3)附件:图片格式gif,jpg,jpge一般不用bmp太大,同时给图片命名

4)缺陷原因分析:缺陷产生的可能原因。

三、缺陷管理的基本流程

流程梳理:


1.测试人员在发布服务器上拿到最新版本的软件,开始测试(手动或自动化测试),执行测试过程中,发现bug,记录到BMS缺陷管理系统中;
2.测试人员会发送邮件给开发人员,开发人员得到最新bug后,定位bug,寻找原因,若问题简单直接解决,若问题较复杂(比如一个bug可以采取三个修改方案,三个方案各有利弊),开发人员会发送邮件给评审专家,共同商讨采用哪种方案;
3.经讨论确认方案后,开发人员进行修改,修改完毕后把修改后的源代码check in 到源代码服务器上,这个服务器上有软件对代码进行管理,该软件就是配置管理软件;
4.开发人员check in 后,Builder(每日构建技术人员)会从源代码服务器上获取最新的源代码,并且进行编译,编译之后把软件最新版本发布到服务器上;
5.测试人员再把新版本下载下来,并验证该版本是否修复了之前版本中发现的缺陷,这就是一个回归测试的过程。

   上面就是一个简单的缺陷管理流程,通过这样一个完整的流程,以bug为驱动,对软件的缺陷记录、提交、修改、验证有了一个很好的管理流程,因为一个完整的缺陷管理过程是贯穿测试、开发、builder的全过程。

四、缺陷管理的目的

1.缺陷跟踪

      保证缺陷得到有效的跟踪和解决。

2.缺陷分析

      获取正确的bug信息,用作缺陷分析和产品度量。

五、缺陷管理相关工具

      软件缺陷跟踪过程需要有软件工具支持:

1.付费工具有:Mercury Quality Center(简称TD) Rational ClearQuest(简称CQ) HP Quality Center(简称QC)

2.免费开源工具有:Bugzilla Mantis Jira

     如何选择工具,建议根据公司财力来,如果公司财力比较雄厚,可以采用付费工具,可用性和易用性较好,同时还有相关技术支持服务;若公司较小,建议使用免费工具,节省开支。

六、缺陷管理相关角色

   软件开发人员,测试人员,开发经理,测试经理,CCB变更控制委员会(开发和测试的协调)、配置管理员(软件版本管理)

七、缺陷管理的相关属性

1.缺陷发现人:可以据此对测试人员进行绩效考核

2.缺陷发现时间

3.缺陷所属版本:避免开发和测试产生混乱。

4.缺陷修改日期:可以据此对开发人员进行绩效评估。

5.软件缺陷的状态 state

软件缺陷状态
New  缺陷的初始状态
Open 开发人员开始修改缺陷
Fixed 开发人员修改缺陷完毕
Closed 回归测试通过
Reopen 回归测试失败
Postpone 推迟修改
Rejected 开发人员认为不是程序问题,拒绝缺陷
Duplicate 与已提交的Defect重复
Abandon 被 Reject和Duplicate的Defect,测试人员确认后的确不是问题,改为此状态

6.severity 软件缺陷严重程度

严重程度:致命→严重→一般→提示

1) 严重性(bug修改的顺序  站在项目的角度综合权衡项目时间、进度、技术和风险)

     高:当天修改  0~8h内

     中:2~4天

     低:一周内或者本发布周期

2)priority 优先级  P0~p4级别(BUG出现对于系统造成的影响,站在用户角度)

     P0:block issue导致测试挂起  尽快修改(代码回滚,回到前一个版本)

     P1:当天修改  0~8

     P2:功能相关

     P3:主要配置环境的UI

     P4:可以不修改

判断:严重等级比较高的bug优先级别一定高?

N 。若 bug很严重但是重复率很低,或者影响项目发布,或当前技术有限,或当前bug修改会产生更大的风险,优先级别可以降低。

7.Issue type 缺陷类型

a.  功能角度

-----error 错误

-----missing 功能遗漏

-----extra 多余的

-----improvement 需优化的,建议修改

b.  质量特性

-----功能性

-----性能

-----安全性

-----配置

-----可靠性

c. 缺陷产生的原因

DCR→design change request设计变更、Perf→性能、Spec→需求、Test→测试

8.bug管理流程图

 9.缺陷状态迁移矩阵

原文地址:https://www.cnblogs.com/Carolinee/p/5319670.html