软件测试测试用例以及方法

测试用例介绍
用例定义:为某个业务 , 编制的一组由测试输入,执行条件以及预计结果组成的案例
为什么要学习测试用例
1:在测试前做好用例,我们可避免盲目的测试问题这样可以大大的节约我们测试的时间 。
2:在测试的时候我们有用例的话我们就是做到避轻就重,把重要先测试 。
3:软件更新后只需要修改少部分的测试用例 , 降低工作强度,缩短项目周期
4:检验软件是否满足客户需求,体现一个测试人员的工作量,展现测试用例的设计思路
测试用例的核心要素(16个)
必须掌握:用例编号(如何命名)、所属模块、用例标题、优先级、前置条件、操作步骤、测试数据、预期结果、实际结果
了解内容:通过否、bugID、编写人员、编写时间、测试人员、测试时间、备注
1:用例编号:产品型号-文件类型-版本号-序号 (淘宝商城: TB-TC-11-001)
2:所属模块:
3:用例标题:一般要做到一看标题就大概能猜出这条用例在测试什么
4:优先级:
5:前置条件:在做这个测试之前必须要先做的事情
6:操作步骤:
7:测试数据:
8:预期结果:一旦给定了 前置条件/操作步骤/测试数据,预期结果我们就知道了,预期结果是正确的结果(应该有的结果)
9:实际结果(特别注意):只有实际测试过才知道,写用例的时候不写,测完才写
10:通过否:看实际结果与预期是否一致,一致就是通过了,没有bug;不一致,没通过,bug
11:bugID:bug的编号
12:编写人员:
13:编写时间:
14:测试人员:谁测试就写谁
15:测试时间:
16:备注:
提取测试点
一个一个需要分析测试的地方
一个测试点有可能会有多条测试用例 , 一个用例只有一个测试点
每一个和用户交互的地方都是测试点
什么是高质量的测试用例
1:测试用例覆盖所有的用户需求
2:测试用例要简单明了
3:各类型的测试用例要齐全
4:用最少的用例覆盖最多的需求
测试用例的方法
等价类划分法:
就是把可能输入的数据进行一个区域的区分,然后从区域中取出局有代表性的数据去测试
等价类 :何为等价类,某个输入域的集合,在这个集合中每个输入条件都是等效的 。
分类:
一般分为有效等价类和无效等价类:
有效等价类:就是说符合需求,输入合理的数据集合;
无效等价类:就是不符合需求,输入的数据集合不合理:
类型
取值范围型: 输入学生成绩 0-100
恒等类型 : 只有一个结果是正确的 , 其他都是错误的 例如 **的特等奖
布尔值型: 通过是否来进行选择,如同意协议
枚举类型: 给出选项内容,只要符合其中任意一个就可以 例如选择学历
规则类型: 给定要求,满足要求的就可以,比如邮箱
在任意文本输入框中可以填写的字符类型: 中文、英文、特殊符号、空格、数字 。
边界值分析法
边界值定:边界值分析是取稍高于和低于边界的一些数据进行测试
确定边界值的方法:上点,离点,内点
1:上点:上点是指边界上的点,开:区间的话上点在域外,闭区间的话在域内,上点遵循开外闭内
2:离点:离上点最近的点,开区间离点在域内,闭区间离店在域外,离点遵循开内闭外
3:内点:域内中间的数值取一
例子:
0<=x<=10 左上点 0 左离点 -1 右离点 11 右上点 10 内点 5
0<x<10左上点 0 左离点 1? 右离点 9? 右上点 10 内点 5
0<=x<10? 左上点 0 左离点 -1 右离点 9? 右上点 10 内点 5
闭 [0,10)开 上点0 右上点11
软件测试用例怎么写,有简单的例子吗?以下是一些需要考虑的步骤:
1 得到需求、功能设计、内部设计说书和其他必要的文档
2 得到预算和进度要求
3 确定与项目有关的人员和他们的责任、对报告的要求、所需的标准和过程 ( 例如发行过程、变更过程、等等 )
4 确定应用软件的高风险范围,建立优先级、确定测试所涉及的范围和限制
5 确定测试的步骤和方法 ── 部件、集成、功能、系统、负载、可用性等各种测试
6 确定对测试环境的要求 ( 硬件、软件、通信等 )
7 确定所需的测试用具 (testware) ,包括记录 / 回放工具、覆盖分析、测试跟踪、问题 / 错误跟踪、等等
8 确定对测试的输入数据的要求
9 分配任务和任务负责人,以及所需的劳动力
10 设立大致的时间表、期限、和里程碑
11 确定输入环境的类别、边界值分析、错误类别
12 准备测试计划文件和对计划进行必要的回顾
13 准备白盒测试案例
14 对测试案例进行必要的回顾 / 调查 / 计划
15 准备测试环境和测试用具,得到必需的用户手册 / 参考文件 / 结构指南 / 安装指南,建立测试跟踪过程,建立日志和档案、建立或得到测试输入数据
16 得到并安装软件版本
17 进行测试
18 评估和报告结果
19 跟踪问题 / 错误,并解决它
20 如果有必要,重新进行测试
21 在整个生命周期里维护和修改测试计划、测试案例、测试环境、和测试用具
本回答以ECShop前台应用中用户注册、用户登陆、商品搜索等功能为例介绍测试用例设计活动 。
1 用户注册
用户注册功能需求如图1所示 。
图1用户注册需求
用户注册需求共涉及4个输入项和1个选择项 。针对于输入项,利用等价类及边界值用例设计方法进行设计,选择项则无须设计在步骤中,在测试执行时分别执行勾选与不勾选即可 。
01.用户名
用户名共有三个条件:必填、不少于3个字符、不能重复,分别构造有效等价类及无效等价类 , 具体如表4-1所示 。
敏捷测试用例根据实际测试需要,不一定写的非常细致,如“用户名”包含字符类型,此处无须再划分纯字母、纯汉字、特殊符号等,构造数据时可混搭 。
02.email
email有两个条件:必填、符合规定格式 , 分别构造有效等价类及无效等价类,如表4- 2所示 。
03.密码
密码有两个条件:必填、不少于6个字符,分别构造有效等价类及无效等价类,如表4- 3所示 。
04.确认密码
确认密码有两个条件:必填、与密码一致 , 分别构造有效等价类及无效等价类,如表4- 4所示 。
测试工程师利用禅道设计用例,如图4- 5所示 。
图4- 5用户注册功能测试用例
2 .用户登录
用户登陆需求如图4- 6所示 。
图4- 6用户登陆需求
用户登陆共有三个字段:用户名、密码、保存登陆信息,其中用户名、密码为输入框,保存登陆信息为选择框 。因该需求比较简单 , 故无须分析过程,直接进行用例设计,如图4- 7所示 。
图4- 7用户登陆功能测试用例
3. 商品搜索
商品搜索需求如图4- 8所示 。
图4- 8商品搜索需求
通过需求分析,商品搜索功能较为简单,测试用例设计时只需考虑一个搜索条件的测试,测试工程师从搜索功能开发角度考虑 。
对于系统而言,如果数据库中存在某个关键字的商品 , 则应该显示,否则应当提示没有匹配的商品,故搜索用例设计不需要使用复杂的用例设计方法,测试工程师只需根据经验设计用例即可 。
对于显示方式,存在显示方式、排序条件、排序方式三种,显示方式又分为小图列表、大图列表、文字,排序条件有按上架时间、按价格、按更新时间 , 排序方式有升序与降序,如果完全组合则有3*3*2=18种组合,测试工程师可利用正交试验用例设计方法进行设计 。
通过分析,共有3个参数,每个参数分别有3、3、2个取值,因此需选择因子数、水平数都3,且试验次数最少的正交表 。查询正交表,4因子3水平正交表符合条件,如表4- 5所示 。
替换参数,得到表4- 6 。
多余因子4舍弃不用,排序方式中的3 , 可使用升序或降序任意填充,由于4因子3水平表中没有全部取2与3的情况,因此根据经验再补充两条,最终得到表4- 7所示的正交表 。
表4- 7优化后的商品显示测试组合
结合搜索条件,利用禅道设计用例如图4- 9所示 。
图4- 9商品搜索功能测试用例
【软件测试测试用例以及方法】
通过上述过程 , 测试工程师完成测试用例的设计工作,评审通过后等待测试版本发布 , 然后进行测试用例执行、跟踪处理缺陷等活动 。