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