赞
踩
按照测试流程,理论+实战
产品经理组织会议
完整性审查
应保证需求能充分覆盖软件需求的各种特征、重点关注功能要求、数据定义、接口定义、性能要求、安全性要求、可靠性要求、系统约束等方面,同时关注是否覆盖开发遗漏的,系统隐含的需求。
准确性审查
应保证所描述的内容能够得到相关各方的理解一致,各项需求之间没有矛盾冲突,各项需求在详尽程度上保持一致,每一项测试需求都可以作为测试用例设计的依据。
功能:政府网站需要支持在线留言功能。
领导能够根据测试计划做宏观调控,进行相应资源配置等;测试人员能够了解整个项目测试情况以及项目测试不同阶段的所要进行的工作等;便于其他人员了解测试人员的工作内容,进行有关配合工作
描述所有要完成的测试工作,包括被测试项目的背景、目标、范围、方式、资源、进度安排、测试组织,以及与测试有关的风险等方面
5W1H
测试需求 | 失效概率 | 失效影响 | 风险等级 |
---|---|---|---|
用户管理 | H | H | H |
个人中心 | M | L | L |
H:high M:middle L:low
方法一:
如果输入条件规定了取值范围或值的个数,则可确定一个有效等价类和两个无效等价类
例:程序的输入项 n 应满足“1-999”
则可取有效等价类:1 <= n <= 999
无效等价类:n < 1 or n > 999
方法二:
方法三:
如果已划分的等价类中各元素在程序中的处理方式是不同的,则应将此等价类进一步划分成更小等价类
如:-10<n<10
有效等价类 -10<n<10
无效等价类: <=-10,>=10
算法m/n
有效等价类( -10,0 )( 0,10 )
无效:小于-10,大于10,0
方法四:
在输入条件是一个布尔量的情况下,可以确定一个有效等价类和一个无效等价类
例:
界面输入只提供单选框,是与否
等价类表
输入条件 | 有效等价类 | 无效等价类 |
---|---|---|
1-999 | 1 <= n <= 999 | n < 1 or n > 999 |
等价类划分的局限性
边界点
边界值分析方法的原则
等价类划分法的局限性
因果图法的使用
因果图法的适用范围
因果图法生产测试用例的基本步骤
判定表
判定表是分析和表达多条件下执行不同操作的情况下的工具
判定表由以下四部分组成:
条件桩:列出问题的所有条件
动作桩:列出问题规定可能采取的操作
条件项:列出特定条件的取值
动作项:列出在条件项目的各种取值情况下应该采取的动作
判定表图示
创建判定表的步骤
确定规则的个数
列出所有的条件桩和动作桩
填入条件项和动作项
合并相似规则
场景法概述
场景法路径
场景法一般包括基本流和备选流。从一个流程开始,图中经过用例的每条路径都可以用基本流和备选流来表示。直黑线表示基本流,是经过用例的最简单路径
场景法设计步骤
场景法实战(用户登录操作流程)
需求如下:
用户登录操作流程(用户名规范)
用户输入用户名,格式要符合如下规范:
用户名出错处理
用户登录操作流程(密码规范)
用户输入密码,格式要符合如下规范:
密码出错处理:
提取需求信息,得到流程图
用例编号 | TC_LOGIN_001 |
---|---|
测试模块 | 项目登录 |
测试标题 | 验证系统输入合法用户名和密码正常登录 |
重要级别 | 高 |
预置条件 | 系统数据库内存在该用户名及密码 |
输入 | 用户名:A1, Aa1-Bb2_Cc3.Dd4E ; 密码:000000, 999999. |
操作步骤 | 启动系统 分别输入用户名:A1, Aa1-Bb2_Cc3.Dd4E 输入密码:100000,999999999 点击确定 |
预期输出 | 进入系统 |
测试用例的构成要素
测试用例编号的命名规则
项目名称_模块名称_xxx,作用:唯一标识每一条用例
用例级别
用例注意事项
用例粒度
掌握一个度
粒度该大该小,如何把握,其实不难。一是看你这个用例写出来会不会测试好几个小时都没能测试完。二是看你这个用例会不会被另一个人执行的时候只执行了涵盖了一部分的测试点而遗漏了另一部分。
测试点和测试用例
可以一对一、多对一,保证每个测试点都有对应的用例
好的用例
根据已有的测试用例,按照里面的步骤一步一步地执行,查看预期结果与实际结果是否一致
测试执行的注意事项
搭建测试环境事项
测试用例执行过程前,成功搭建测试环境是第一步。一般来说,软件产品提交测试后,开发人员应该提交一份被测试软件产品的详细安装指导书。
如果开发人员拒绝提供相关的安装指导书,搭建测试中遇到问题的时候,测试人员可以要求开发人员协助,这时候,一定要把开发人员解决问题的方法记录下来,避免同样的问题再次请教开发人员,这样会招致开发人员的反感,也降低了开发人员对测试人员的认可程度。
注意用例的前提条件和特殊说明
有些测试软件是有顺序性的,那么它的测试用例就会有一些执行前提或特殊说明。
比如要测试某个软件的登陆功能,那么测试前必须创建用户,并为用户分配一定的权限等。如果前提条件和特殊说明没有注意,会导致测试用例的无法执行。
测试用例要全部执行
因为编写测试用例时,它考虑了测试覆盖率的问题,每条测试用例都对应一个功能点,如果少执行一条,就会有一个功能点没有测试到。
我们执行测试前要认为待测试软件的每条功能点都是未实现的,每个功能点我们都要测试一遍,才能保证待测试软件能正确满足用户需求。
不要忽视任何偶然现象
我们在执行某条用例时,软件会出错,但是当再次执行时这个错误就不再重现。这种情况,一般大家就会认为是偶然现象,就会忽略过去。其实,这种错误才是隐藏最深的,最难发现的错误。
遇到这种情况时,要仔细分析这种情况,不要忽视任何小的细节,多测试几次,尽可能准确的找出问题的原因。
加强测试过程的记录
测试执行过程中,一定要加强测试过程记录。执行过的用例做好对应标记,发现了缺陷应及时提交确认。
一般软件产品提供 了日志功能,比如有软件运行日志、用户操作日志。如果发现比较复杂难定位的问题,一定要在测试用例执行后记录相关的日志文件,作为测试过程记录,这样开发人员可以通过这 些测试记录方便的定位问题。而不用测试人员重新搭建测试环境,为开发人员重现问题。
详细记录预期与实际的不一致
如果不一致,要从多个角度多测试几次,尽量详细的定位软件出错的位置和原因,并测试出因为这个错误会不会导致更严重的错误出现,最后把详细的输入和实际的输出,以及对问题的描述写到测试报告中。
因为在一个项目组中,项目的开发时间是有限的,如果我们测试时能把问题描述的详细一些,那么开发人员就会很容易的重现这个问题,也就能更快的解决问题,节省项目时间。
提交缺陷时与开发的关系处理
测试执行过程中,当你提交了问题报告单,可能被开发人员无情驳回,拒绝修改。这时候,只能对开发人员晓之以理,做到有理、有据,有说服力。
并不是所有的缺陷都要修复
有一些原因,使得有些缺陷我们不修复:
没有足够的时间(评估影响可控)
缺陷的级别过低
修复的风险太大
缺陷的生命周期
当一个缺陷被发现了之后:
测试工程师填写《缺陷跟踪单》
提交给开发人员定位问题
开发人员定位错误后修复缺陷转给测试人员
测试人员对该修复进行验证,确认是否正确修复,确认是否有引 发 新问题,是否影响了原有正常的功能
⭐️缺陷管理流程
缺陷相关计算
缺陷密度=缺陷权值/代码行(KLOG)
*缺陷权值DI计算:*致命问题权值为10,严重问题为3,一般问题为1,提示问题为0.1。
这里的代码行(KLOG)是指每千行代码。
缺陷修复率=累计关闭缺陷数/累计发现缺陷数*100%
缺陷类型分布:按照软件产品质量模型的不同方面进行测试时,各自发现的缺陷分布的百分比。
缺陷状态
缺陷状态 | 描述 |
---|---|
New | 测试中新报告的软件缺陷,等待分派 |
Open | 已确认的缺陷,等待开发人员修改 |
Fixed | 已经被开放人员修改的缺陷,等待测试人员校验 |
Rejected | 不是缺陷或者不需要修复 |
Reopen | 没有修复,重新打回开发人员 |
Closed | 已经被测试人员确认得到正确修复,可以关闭 |
缺陷严重程度 | 描述 |
---|---|
致命 | 软件无法运行,或者软件的主要功能丧失,或者很大可能会造成严重的不良后果 |
严重 | 软件的次要功能丧失,或者主要的功能在一些特定的情况下会出错,比如金额计算等 |
一般 | 软件在某些特定情况下会出错,但是造成的后果影响不大 |
轻微/提示 | 在某些情况下会出错,但是造成的后果影响很小 |
待补充
什么是软件测试报告
软件测试报告是测试人员在完成整个系统测试工作后必须要撰写的一份文档,这份文档反映了测试过程和测试结果,是对阶段性测试任务的总计
测试报告有什么用
测试报告之人力投入
投入项 | 测试人员 | 工作量(人天) |
---|---|---|
测试用例的编写 | XXX | 1.5人天 |
测试执行 | XX、XXX | 9.5人天(XX:5.5天、XXX:4天) |
合计 | XX、XXX | 9.5天/人 |
测试报告之用例覆盖度
用例总数 | 通过用例数(OK) | 未通过用例数(NG) | 尚未测试(NT) | 无测试条件、暂时不能测试(NC) | 尚未开发(ND) | 通过率(%) | 备注 |
---|---|---|---|---|---|---|---|
263 | 251 | 0 | 0 | 1 | 11 | 1 | 新增加10个用例 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。