测试用例要素构成
- 用例ID
字符和数字组合成的字符串,用例编号应具有唯一性、易识别
系统测试
产品编号-ST-系统测试项名-系统测试子项名-XXX
集成测试
产品编号-IT-集成测试项名-集成测试子项名-XXX
单元测试
产品编号-UT-单元测试项名-单元测试子项名-XXX
- 用例标题
简单描述,需要用概括的语言描述用例的出发点和关注点,原则上每个用例的标题不能重复
- 所属项目
当前测试用例所在测试大类、被测试需求、被测模块、被测单元等
系统测试用例测试项目
软件需求项
集成测试用例测试项目
集成后的模块名或接口名
单元测试用例测试项目
被测函数名
- 用例优先级
对基本和普通测试项的区分
高级别
保证系统基本功能、核心业务、重要特性、实际使用频率比较高的用例
中级别
重要程度介于高和低之间的测试用例
低级别
实际使用的频率不高,对系统业务功能影响不大的模块或功能的测试用例
- 预置条件
执行当前测试用例需要的前提条件,如果这些前提条件不满足,则后面测试步骤无法进行或无法得到 预期结果
- 测试数据
用例执行过程中需要加工的外部信息。根据软件测试用例的具体情况,有手工输入、文件、数据库记录等
- 执行步骤
执行当前测试用例需要经过的操作步骤,需要明确的给出一个步骤的描述,测试用例执行人员可以根据该步骤完成测试用例执行
- 预期结果
当前测试用例的预期输出结果,包括返回值内容,界面的响应结果,输出结果的规则符合度等
测试用例额外的要素
- 用例设计者
能准确的找到测试用例设计人员,对用例修改时能方便找准人员
- 用例设计日期
方便检查用例设计的进度
- 用例版本号
方便用例设计人员对用例的跟踪
- 对应的开发人员
出现BUG后能及时找到相应的人员进行修复
测试用例的设计
设计的方法:
- 等价类
等价类划分可有两种不同的情况:有效等价类和无效等价类。
1)有效等价类
是指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。
2)无效等价类
与有效等价类的定义恰巧相反。无效等价类指对程序的规格说明是不合理的或无意义的输入数据所构成的集合。对于具体的问题,无效等价类至少应有一个,也可能有多个。
- 边界值
边界值分析方法的考虑:
长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。
使用边界值分析方法设计测试用例,首先应确定边界情况。通常输入和输出等价类的边界,就是应着重测试的边界情况。应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。
- 因果图
采用因果图法设计测试用例的步骤:
1)分析软件规格说明描述中, 那些是原因(即输入条件或输入条件的等价类),那些是结果(即输出条件), 并给每个原因和结果赋予一个标识符。
2)分析软件规格说明描述中的语义,找出原因与结果之间, 原因与原因之间对应的关系,根据这些关系,画出因果图。
3)由于语法或环境限制, 有些原因与原因之间,原因与结果之间的组合情况不可能出现,为表明这些特殊情况, 在因果图上用一些记号表明约束或限制条件。
4)把因果图转换为判定表。
5)把判定表的每一列拿出来作为依据,设计测试用例。
- 判定表
能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。因此,利用判定表能够设计出完整的测试用例集合。
在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条件的组合,即:针对不同逻辑条件的组合值,分别执行不同的操作。判定表很适合于处理这类问题。
判定表通常由四个部分组成如下图所示。
1)条件桩(Condition Stub):列出了问题得所有条件。通常认为列出的条件的次序无关紧要。
2)动作桩(Action Stub):列出了问题规定可能采取的操作。这些操作的排列顺序没有约束。
3)条件项(Condition Entry):列出针对它左列条件的取值。在所有可能情况下的真假值。
4)动作项(Action Entry):列出在条件项的各种取值情况下应该采取的动作。
- 正交法
利用正交实验设计测试用例的步骤:
1.提取功能说明,构造因子--状态表
把影响实验指标的条件称为因子.而影响实验因子的条件叫因子的状态.利用正交实验设计方法来设计测试用例时,首先要根据被测试软件的规格说明书找出影响其功能实现的操作对象和外部因素,把他们当作因子,而把各个因子的取值当作状态.对软件需求规格说明中的功能要求进行划分,把整体的概要性的功能要求进行层层分解与展开,分解成具体的有相对独立性的基本的功能要求.这样就可以把被测试软件中所有的因子都确定下来,并为确定个因子的权值提供参考的依据.确定因子与状态是设计测试用例的关键.因此要求尽可能全面的正确的确定取值,以确保测试用例的设计作到完整与有效。
2.加权筛选,生成因素分析表
对因子与状态的选择可按其重要程度分别加权.可根据各个因子及状态的作用大小,出现频率的大小以及测试的需要,确定权值的大小。
3.利用正交表构造测试数据集
正交表的推导依据Galois理论(这里省略,需要时可查数理统计方面的教材)。
利用正交实验设计方法设计测试用例,比使用等价类划分,边界值分析,因果图等方法有以下优点:节省测试工作工时;可控制生成的测试用例数量;测试用例具有一定的覆盖率。
- 流程图法
- 错误推测
错误推测方法的基本思想:
列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例。
1) 例如, 输入数据和输出数据为0的情况;输入表格为空格或输入表格只有一行。 这些都是容易发生错误的情况。可选择这些情况下的例子作为测试用例。
2) 例如,前面例子中成绩报告的程序,采用错误推测法还可补充设计一些测试用例:
I. 程序是否把空格作为回答
II. 在回答记录中混有标准答案记录
III. 除了标题记录外,还有一些的记录最后一个字符即不是2也不是3
IV. 有两个学生的学号相同
V. 试题数是负数。
3) 再如,测试一个对线性表(比如数组)进行排序的程序,可推测列出以下几项需要特别测试的情况:
I. 输入的线性表为空表;
II. 表中只含有一个元素;
III. 输入表中所有元素已排好序;
IV. 输入表已按逆序排好;
V. 输入表中部分或全部元素相同。
- 状态迁移
如何设计测试用例(要具体结合我们需求说明书)
根据产品需求说明书使用xmind画出测试用例思维导图
其中核心业务是根据下列的业务流程图画出的
根据测试用例思维导图设计出测试用例:
编号 | 用例标题 | 所属项目 | 优先级 | 预置条件 | 测试数据 | 执行步骤 | 预期结果 | 执行结果 |
导航区 | ||||||||
1 | 主页导航标题显示 | Ego | p2 | 网络正常 | 无 | 1、通过微信扫码进入小程序 2、查看微信Ego小程序主页Android导航标题显示 3、查看微信Ego小程序主页iOS导航标题显示 | 2、导航标题"Ego微商"显示居左 3、导航标题"Ego微商"显示居中 | |
2 | 主页进入下一级页面导航显示 | Ego | p2 | 网络正常 | 无 | 1、通过微信扫码进入小程序 2、点击轮播图进入商品详情页,查看导航显示 | 导航标题显示"商品详情",左侧有返回按钮"<" | |
3 | 主页进入下级页面也返回 | Ego | p2 | 网络正常 | 无 | 1、通过微信扫码进入小程序 2、进入下级页面点击导航返回按钮能返回到上级页面 | 2、能够返回到上级页面 | |
4 | 主页进入多级页面可返回 | Ego | p2 | 网络正常 | 无 | 1、通过微信扫码进入小程序 2、通过主页进入专题在进入商品详情进行逐级返回 | 能够逐级返回到主页 | |
5 | 主页转发 | Ego | p2 | 网络正常 | 无 | 1、通过微信扫码进入小程序 2、进入主页导航右侧内嵌按钮转发 | 2、能够转发成功到其他微信用户 3、能够转发成功到微信朋友圈 | |
6 | 主页转发结果验证 | Ego | p2 | 网络正常 | 无 | 1、通过微信扫码进入小程序 2、查看是否能够直接打开对应小程序 | 2、能够成功打开进入小程序对应页面 | |
展示区 | ||||||||
Ego-show_001 | 主页轮播图显示与后台传送的信息是否一致 | Ego | p2 | 网络正常 | 1张 | 1、通过工具在服务器端传轮播图 2、进入小程序主页,查看轮播图显示信息是否和上传的一致 | 和后台上传的一致 | |
Ego-show_002 | 主页轮播图单张图片轮播 | Ego | p2 | 网络正常 | 1张 | 1、通过工具在服务器端传轮播图数量为一张 2、进入小程序主页 3、插卡轮播图是否轮播 | 单张图片不轮播 | |
Ego-show_003 | 主页轮播图显示与后台传送的信息是否一致 | Ego | p2 | 网络正常 | 5张 | 1、通过工具在服务器端传轮播图 2、进入小程序主页,查看轮播图显示信息是否和上传的一致 | 和后台上传的一致 | |
Ego-show_004 | 主页轮播图显示与后台传送的信息是否一致 | Ego | p2 | 网络正常 | 6张 | 1、通过工具在服务器端传轮播图 2、进入小程序主页,查看轮播图显示信息是否和上传的一致 | 显示5张 | |
Ego-show_005 | 主要轮播图的轮播方式 | Ego | p2 | 1、网络正常 2、轮播图片多于一张 | 无 | 1、进入Ego微商小程序主页 2、查看轮播图轮播方式 | 按指定频率进行循环轮播 | |
Ego-show_006 | 主要轮播图的轮播频率 | Ego | p2 | 1、网络正常 2、轮播图片多于一张 | 无 | 1、进入Ego微商小程序主页 2、查看轮播图轮播频率 | 5秒轮播一张图片 | |
Ego-show_007 | 主页当前轮播图的状态 | Ego | p2 | 1、网络正常 2、轮播图片多于一张 | 无 | 1、进入Ego微商小程序主页 2、查看当前轮播图对应状态 | 当前轮播图对应显示黑色实心点 | |
Ego-show_008 | 主页非当前轮播图的状态 | Ego | p2 | 1、网络正常 2、轮播图片多于一张 | 无 | 1、进入Ego微商小程序主页 2、查看非当前轮播图对应状态 | 当前轮播图对应显示灰色实心点 | |
Ego-show_009 | 主页轮播图滑动操作 | Ego | p3 | 1、网络正常 2、轮播图片多于一张 | 无 | 1、进入Ego微商小程序主页 2、主页存在多张轮播图 3、通过手指向左滑动 4、通过手指向右滑动 | 3、能够切换下一张轮播图片 4、能够切换上一张轮播图片 | |
Ego-show_010 | 主页轮播图点击操作 | Ego | p4 | 网络正常 | 无 | 1、进入Ego微商小程序主页 2、主页存在多张轮播图 2、点击其中一张轮播图 3、进入轮播图对应详情页面能否返回 | 3、能够进入当前轮播图对应的商品详情页面 4、进入轮播图对应的详情页面能够返回到主页 | |
核心业务 | ||||||||
Ego-Business-01 | 库存不足,下单失败 | Ego | p1 | 网络正常 | 无 | 1、打开小程序 2、选中商品添加购物车进行下单 3、在订单详情点击去付款操作 | 3、提示库存不足,未生成订单 | |
Ego-Business-02 | 下单成功,未完成支付 | Ego | p1 | 网络正常 | 无 | 1、打开小程序 2、选中商品添加购物车进行下单 3、在订单详情点击去付款操作 4、进入我的查看订单状态 | 3、能够呼起微信支付操作 4、显示订单编号及订单状态信息待付款 | |
Ego-Business-03 | 下单成功,支付失败 | Ego | p1 | 网络正常 | 无 | 1、打开小程序 2、选中商品添加购物车进行下单 3、在订单详情点击去付款操作,结果付款失败,查看订单详情 | 3、订单状态显示"待付款"状态 | |
Ego-Business-04 | 下单成功,支付成功 | Ego | p1 | 网络正常 | 无 | 1、打开小程序 2、选中商品添加购物车进行下单 3、在订单详情点击去付款操作,结果付款成功 4、点击我的查看付款状态 | 4、订单状态显示"已付款"状态 |