1.0 状态迁移法定义
找出当前被测对象的每一个状态,分析每一个状态之间如何进行转化,根据转化的过程进行设计测试用例。
状态迁移法不保证单个功能的正确性,只考虑状态之间的转化是否和需求保持一致。
适合较为复杂的业务场景
2.0 案例1——网上购票系统
2.1 网上购票系统分析
1.查询对应的目的地的票务信息,【查询车票】,信息【未预定】
2.选择需要预定的车票,【提交订单】,车票信息【已预订】
3.订单支付成功,信息变为【已支付】
4.用户到达火车站后,取出车票,信息变为【已取票】
5.用户进站,信息变为【已进站】
6.用户经过检票口,上车,信息变为【已使用】
7.检票完成之前,都可以取消车票,信息变为【已取消】
2.2 状态迁移法具体操作
1.明确了所有的状态节点
未预定、已预订、已支付、已取票、已进站、已使用、已取消
2.绘制状态迁移图
3.绘制状态迁移树
2.3 根据测试路径设计测试用例
路径:
未预定→已预订→已支付→已取票→已进站→已使用
未预定→已预订→已取消
未预定→已预订→已支付→已取消
未预定→已预订→已支付→已取票→已取消
未预定→已预订→已支付→已取票→已进站→已取消
3.0 案例2——购物下订单
3.1 购物下单分析
1.用户在提交完订单后,订单生成,订单状态变为【等待付款】
2.用户付款完成后,订单状态变为【等待发货】
3.商家确认订单后,发货,用户订单状态变为【等待收货】
4.用户收到商品,需要进行确认收货,订单状态变为【等待评价】
5.用户使用商品,评价完成,订单状态变为【完成】
6.在商家发货之前,用户可以取消订单,订单状态变为【已取消】
7.在商家发货之后,用户可以退货
8.在用户付款之前,商家取消订单,订单状态【已作废】
找出所有的状态节点
等待付款、等待发货、等待收货、等待评价、完成、已取消、已作废
3.2 状态迁移法具体操作
状态迁移树
3.3 根据状态转化路径,设计测试用例
等待付款→等待发货→等待收货→等待评价→完成
等待付款→已作废
等待付款→已取消
等待付款→等待发货→已取消
等待付款→等待发货→等待收货→已退货
等待付款→等待发货→等待收货→等待评价→已退货
等待付款→等待发货→等待收货→等待评价→完成→已退货
4.0 业务流程
4.1 流程图
4.2 绘制流程图
案例——ATM机取款
4.3 业务流程测试
关注点:关心的是核心业务是否能够正常走通 重点不是关注每个功能具体的细节点
4.3.1 价值
测试:在进行工作安排的时候,针对功能模块进行划分,业务流程可能会有缺失,冒烟测试
客户:最有价值的就是业务的实现,并不关注单个功能
4.4 使用场景
冒烟:在单功能模块基本可用的情况下
上线之前,测试业务流程
4.5 业务流程测试步骤
1.需求分析,流程清晰
2.画出流程图
3.根据流程图,编写测试用例,每一条路径就是一条测试用例
注意点:
路径较多的时候,需要根据业务路径设置优先级
4.6 尚惠有品下订单
浏览商品——>加入购物车——>去结算——>编写订单信息——>提交订单——>选择付款方式——>等待收货