1. 测试用例写作规范
测试用例的概念
是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。
为什么要写测试用例
便于可视化管理
避免测试点的遗漏
可以提高测试执行效率
统一标准
便于重复测试
便于团队交流
便于统计跟踪
2.测试用例的八要素及其他要素
用例编号 – Test case no
模块 – Module
用例标题 – Test case name
优先级 - Priority
预置条件 – Pre-condition
输入数据 - data
操作步骤 - Step
预期结果 – Expected result
作者 - author
版本 - version
日期 - data
是否评审 - Review
测试结果 result
通过 - passed
失败 - failed
阻碍 – blocked
未执行 - NA
-----------------
3.测试用例的等级划分
P1: 系统的基本功能,case数量应受到控制 15~20%
划分依据:该用例执行失败,会导致多处重要功能不可用;发生概率较高的,经常使用的功能
该类用例需在每一轮版本测试中执行
P2: 系统的重要功能,case数量较多 30~50%
划分依据:各种应用场景,使用频率较高的正常功能。功能交互相关。
在回归的系统测试版本中都要执行,系统所有的重要功能都必须实现
P3: 系统的一般功能,case数量较多 30~50%
划分依据:使用频率低于P2,比如超长字符串,边界值,事物完整性等
非回归的系统测试版本中不用都进行验证,在系统测试的中后期不一定每个版本都验证
P4:可有可无 5~10%
划分依据:比较生僻的输入,使用频率非常低得功能
在版本测试中,有某些正常原因,经过和产品经理进行沟通确认可以不执行
-----------------
4.测试用例的完整写作过程
基于需求文档分析测试需求-> 设计测试用例-> 写作测试用例-> 评审测试用例
5.用例如何评审?
当测试工程师完成用例的编写后,先会通知开发与需求,开发和需求可提前查看测试用例,测试工程师会安排评审会议,并发送会议邀请给相关开发,需求,项目经理,测试及开发组长。测试,开发,需求等人员一起开会,测试主导评审会议,并讲解用例写作相关内容,开发,需求及其他人员可以提出建议及相关补充,会议通过后,测试再对用例进行最终整理。
6.什么样的用例是好的测试用例(从用例写作的角度来讲)
6.1用例写作符合5C原则
正确(correctness):数据输入
清楚(clarity):操作步骤
简洁(concision):标题
完整(completion):预期结果检查完整
一致性(consistency):用例编号
7.缺陷管理
缺陷 -》Bug
缺陷管理工具:QC,Mantis,Bugfree,Bugzilla,Jira,禅道
缺陷的属性:
创建者 reporter
创建时间 date
缺陷版本 version ********
缺陷类型 type ********
缺陷所属的产品/项目/模块 product, project, feature
指派给 assign to ********
缺陷编号 no ********
标题 title ********
缺陷严重程度 serverity ********
缺陷优先级 priority ********
缺陷状态 status (状态: 激活active,已解决fixed, 已关闭closed;【新建new,正在修改inprogress, 打开open, 重新激活reopened】 ) ********
操作系统
浏览器
详细描述 description
重现率
预置条件 pre condition ********
步骤 steps ********
实际结果 actual result ********
期望结果 expected result ********
其他信息 additional information
用例编号 testcase no
附件 attachment (截图,视频,文件-log日志) ********
解决者
解决方案:已修复fixed, 重复duplicated, 不能重现cannot reproduced, 设计如此by design,外部原因external issue, 不修复won't fix, 推迟修改postpone) ********
缺陷引发的原因 root cause
代码改动范围
影响范围
解决日期
验证人
验证环境
验证范围
结果
缺陷的等级划分:
紧急 - 导致系统运行中断,程序崩溃,核心业务未完成,测试工作无法进行,核心金额计算错误
严重 - 主要流程无法进行,功能与需求不符,轻微的金额计算错误
一般 - 次要功能出错,提示信息不符,体验差,
微小 - 很细小的问题,几乎对功能没有影响
界面(UI)bug:有可能是比较严重的问题,也有可能是比较微小的问题
--------------
缺陷管理流程中的几个角色
开发
测试
开发组长
测试组长
缺陷处理流程:
测试人员在执行测试用例时,发现Bug后,将其上报到缺陷管理系统,并指派给开发,开发确认缺陷,如果是一个缺陷并且需要修复的,开发修改缺陷,修改完成后,在缺陷管理系统中将缺陷解决为【已解决】,并回指给测试,测试验证缺陷,如果验证通过,测试关闭缺陷,否则,测试重新激活缺陷。
测试人员在执行测试用例时,发现Bug后,将其上报到缺陷管理系统,指派给测试主管,测试主管将bug指派给对应的开发 ......
测试人员在执行测试用例时,发现Bug后,将其上报到缺陷管理系统,指派给开发主管,开发主管将bug指派给对应的开发 ......
测试人员在执行测试用例时,发现Bug后,将其上报到缺陷管理系统,指派给测试主管,测试主管将bug指派给开发主管,开发主管将bug指派给对应的开发 ......
测试上报了bug后,开发如果判断Bug是一个不能重现的Bug,开发会将Bug解决为不能复现,回指给测试,测试验证Bug是否确实不能复现,如果确定不能复现,测试关闭Bug,否则,测重新激活Bug。开发需要继续修改
测试上报了bug后,开发如果判断Bug是一个重复Bug,开发会将Bug解决重复Bug,回指给测试,测试验证Bug是否确实是重复Bug,如果确实重复,测试关闭Bug,否则,测重新激活Bug。开发需要继续修改
测试上报了bug后,开发如果判断Bug是一个设计如此的BUG,开发会将BUG解决为设计如此,回指给测试,测试验证Bug是否确实是设计如此,如果是,测试关闭Bug,否则,测重新激活Bug。开发需要继续修改
测试上报了bug后,开发如果判断Bug是因为外部原因引起的,开发会将Bug解决外部原因,回指给测试,测试验证Bug是否确实是外部原因,如果确实是,测试关闭Bug,否则,测重新激活Bug。开发需要继续修改
对于外部原因的Bug,可能是直接关闭,也可能会提交给第三方,由第三方修改,之后再由测试验证
测试上报了bug后,开发如果建议该Bug不需要修改,开发会和开发主管,测试主管,测试相关人员以及产品经理一起沟通,如果大家同意该Bug可以不修改,开发会将Bug解决为不予解决,回指给测试,测试直接关闭Bug
到后期项目快要上线时,如果再发现一些不影响主要功能使用的Bug,测试上报后,经过相关人员同意,开会将将Bug解决为延期处理,回指给测试,测试关闭Bug,到下一个版本开始后,测试激活此类Bug,开发继续修改
8.禅道的具体使用:
今天先介绍在禅道中报bug,写用例
在报bug或写用例之前,要先在禅道中做一些设置
先用管理员登录
1、创建产品
产品 -》添加产品,输入产品名称,如ATM取款,产品代号随便填,如12343245,保存
2、创建项目
项目 -> 添加项目,输入必填项,项目名称为ATM1.0,项目代号随便填,起始日期按实际选择,关联产品处一定要选择前面创建的产品,点击保存按钮
3、创建用户
组织 -> 用户 -》 批量添加,所属部门不用写,用户名是登录用的名称,如为测试人员添加时可以设为tester1, 真实姓名可以是中文,如测试1,职位选择测试,分组默认是测试,再输入密码,如123456,以同样的方式添加开发人员的登录帐号, 如 dev1, 开发1, 职位选择 研发,分组默认。在保存前还要输入管理员密码。
4、将第3步添加的测试与开发关联到ATM取款这个项目中
项目 -> 团队,点击 右上角的团队管理 按钮,选择第3步添加的开发与测试,保存
以测试角色登录
5、写用例
测试 -> 用例 -> 建用例
6、报bug
测试 -> bug -》 提bug
作业:
1、在excel表格中完成用例编写
2、在禅道中将excel表格写的用例再录入禅道
3、背熟悉用例的八大要素
4、能快速背15个缺陷的属性
5、在禅道中提交7个 bug,以开发和测试角色分别模拟不同的解决方案处理bug。
6、熟记缺陷处理流程
7、熟悉缺陷的七大解决方案