3.用例设计第二天

用例设计第二天

一、正交实验法

概念
  1. 用来研究多因素多水平的一种试验法。
  2. 使用数学工具:正交表
适用范围
  1. 配置测试:通过调整不同的配置单元以及配置项,使得软件系统获得最优的服务效果
  2. 兼容测试:
  3. 功能测试:有多个输入框,每个输入框又分别有不同个数的值。
适用特点
  1. 均匀分散:
  2. 整齐可比:
  3. 举例:
    1. 某网页涉及兼容测试:
      1. 操作系统:windows、macOS、ubuntu
      2. 浏览器:firefox、chrome、safari、Netscape
    2. 修改某电商平台的物流地址:省、市、县区
  4. 因素:影响试验结果的要素。 比如:操作系统、浏览器
  5. 水平:因素的实际取值。比如:windows、macOS、ubuntu 这三个就是操作系统的水平
使用步骤
  1. 确定因素
    1. 例子: 登录功能要求输入用户名、密码、验证码;如果三个项都正确,就登录成功,任何一项错误,登录失败
    2. 这里 的用户名、密码、验证码就是因素
  2. 确定因素水平
    1. 用户名、密码、验证码的取值分别是正确、错误。
  3. 选择正交表:根据确定的因素和水平,选择合适的正交表
    1. 如果刚好有对应的正交表,比如:三因素两水平的表
    2. 如果没有刚好对应的正交表,以最多的水平数为基准去选,选行数最少的正交表
  4. 参照正交表编写测试用例
    1. 一行一个用例
pict的用法
  1. 安装到本地,推荐D盘的根目录

  2. 使用cmd打开命令窗口

  3. 准备model文件

  4. 执行pict命令,生成正交表

  5. 根据正交表写用例

    1. 例子:

      编号标题操作步骤预期结果
      1使用错误的密码进行登录输入正确的用户名,输入错误的密码,输入正确的验证码,点击登录登录失败

      按照这个正交表来实现的时候,发现遗漏一个全部正确的一个用例。所以在使用正交实验法设计用例之后,需要根据经验进行补充用例。因为正交实验法是两两匹配,对于三个的水平匹配会主动遗失掉,在审查用例的时候,从三个组合入手。

二、状态迁移法

概念
  1. 根据事物在不同状态下进行转换,从而使用状态转换事件来设计测试用例的方法。
  2. 状态机:在某些事件推动下,事物的状态会发生变化,但是总的状态数量是有限的
两个要素
  1. 事件:导致事物状态发送变化的行为。比如:关门,门在被推拉情况下,合上。
  2. 状态:事物在某一时刻所呈现出来的情况。
适用范围
  1. 针对被测对象的状态比较多,而且状态之间相互转换的关系比较多的情况
使用步骤
  1. 确定被测对象的状态,以及触发状态发生变化的事件

    编号状态状态的描述
    1新建当把商品加入购物车,提交订单成功时候
  2. 绘制状态迁移图

    1. 用圆圈代表状态

    2. 使用有向箭头指示状态迁移的方向

    3. 箭头上标记事件

  3. 画出状态迁移树

    1. 在状态迁移图中选一个状态,观察出去箭头,按照这个箭头的方向,转化为树图
  4. 编写测试用例

    1. 依据状态迁移树,来编写用例,一个分支一条用例

      编号标题步骤预期结果
      1把关闭的门转到打开状态使用手推动关闭的门门打开
  5. 优点

    1. 针对被测对象状态比较多且转换过程复杂的情况,能够保证测试用例设计的完整性。
  6. 缺点

    1. 不关注输入、业务逻辑细节

三、错误猜测法

概念:
  1. 基于经验和直觉推测程序中可能存在的各种错误,从而针对性去设计测试用例。
    1. 依赖测试工程师对产品业务的熟悉程度,对历史问题的熟悉程度,项目经验
  2. 有哪些经验可以借鉴
    1. 边界值
    2. 极限值
    3. 特殊取值:单引号、尖括号<>
    4. 年月日取值
    5. 工作当中曾经出现过的问题
  3. 优点
    1. 发挥人的直觉和经验
    2. 集思广益
    3. 方便使用、快速切入
  4. 缺点
    1. 没法评估用例的覆盖度
    2. 遗漏未知区域
    3. 带有主观性,无法复制
    4. 只能是一种用例设计的补充方法,无法单独使用

四、随堂练习

  1. 昨天的作业

    根据以下需求场景描述设计用例:用户进入到网站后,进行书籍的选择,当选好自己心仪的书籍后进行订购,这时把所需图书放进购物车,等进行结帐的时候,用户需要登录自己注册的帐号,登录成功后,进行付款交易(假定付款时只判断余额足不足),交易成功后,生成订购单,整个购物过程结束。请根据流程分析法/场景法设计用例。
    
    写一段程序来重新格式化文本,具体如下:
    给定一段连续的文本,以ENDOFTEXT字符结尾,并且文本内的字之间使用BLANK或者NEWLINE字符隔开,根据下面规则把该文本转成一行接一行的格式:
    行在文本有BLANK或NEWLINE处中断;
    行尽可能长;
    行的长度最长不能超过设置的MAXPOS长度个字符;
    请根据错误猜测法设计可能的用例有哪些。
    
  2. 正交实验法的练习题:

    1. 查询个人社保信息的功能:用户可以通过姓名、身份证号、手机号来查询自己社保信息,该功能可以根据任意一个条件,或组合进行查询,如果没有填写值,根据有值的,如果都没有,则不查询。
  3. 状态迁移法的练习题:

    1. 京东商城订单流程:用户将商品加入到购物车,然后在购物车里面点击提交订单,数据库的订单表就会新增一条订单数据,状态为未支付;用户支付之后,状态更新为已支付;订单就会在仓库管理系统中查询到,仓库工作人员就可以将订单打印出来,并去捡取响应的商品,捡好之后,推到打包区,订单状态更新为已拣货;打包人员根据订单的明细,然后进行包装,完成之后,商品被放到出库区,状态更新为已打包;快递车根据订单配送地址进行分拣配送,状态更新配送在途;当买家收到快递,完成签收之后,状态更新为已签收。注意以下,配送在途之前的订单允许取消。

五、用例设计方法总结

​ 学了六个方法:等价类、边界值、流程分析法、状态迁移法、正交实验法、错误猜测法

​ 还有两个方法:判定表法、因果图法

1. 等价类、边界值针对输入域,这两个方法一起用。横向覆盖
2. 流程分析法针对业务流程或算法,我们测试最终的对象算法,尤其是功能测试中。纵向覆盖
3. 正交实验法:针对均匀分散、整齐可比的测试对象
4. 状态迁移法:被测对象状态比较多,且互相之间的迁移比较复杂。
5. 错误猜测法:根据测试工程师的经验来使用,备胎方法。

猜测法

​ 还有两个方法:判定表法、因果图法

1. 等价类、边界值针对输入域,这两个方法一起用。横向覆盖
2. 流程分析法针对业务流程或算法,我们测试最终的对象算法,尤其是功能测试中。纵向覆盖
3. 正交实验法:针对均匀分散、整齐可比的测试对象
4. 状态迁移法:被测对象状态比较多,且互相之间的迁移比较复杂。
5. 错误猜测法:根据测试工程师的经验来使用,备胎方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值