作为测试人,我们平时比较常用的软件测试测试方法有边界值、等价类划分、错误推测法、因果图、场景法等,如果提到状态图法,可能很多人都很陌生,今天我们就来一起认识下状态图法。
状态图通常在被测试软件状态比较多的情况下使用,就是列举出被测软件的所有状态,再分析各个状态之间的转换条件和转换路径,用图形或表格的方式把相关联的操作和状态组合在一起,从其状态迁移路径覆盖的角度来设计测试用例。
举个常见的场景,比如你在某宝、某东app进行下单操作,如果你足够细心的话,会观察并总结出,订单的状态一般分为已下单未付款、已付款待发货、已发货待收货、已收货待评价、已评价,大致列举为这5种状态。
状态图测试步骤:
明确状态节点——绘制状态迁移图——绘制状态迁移树——抽取路径设计用例
案例分析:某宝购物系统
1、选择商品进行下单操作,未进行支付,此时订单状态是“待付款”,可操作【付款】和【取消订单】
2、支付订单后,此时订单状态是“待发货”,可操作【申请退款】
3、卖家发货后,此时订单状态是“待收货”,可操作【申请退款】、【申请退货退款】和【确认订单】
4、确认收货后,此时订单状态是“待评价”,可操作【评价】
5、评价成功后,此时订单状态是“已完成”,可操作【删除订单】
状态迁移图:
状态迁移树:
抽取路径设计用例:
路径1:下单-取消订单
路径2:下单-支付-退款
路径3:下单-支付-发货-退款
路径4:下单-支付-发货-退货退款
路径5:下单-支付-发货-收货-评价-删除订单