jmeter使用-场景化测试的前置处理(循环控制器+计数器)
接口自动化初始化数据说明(支付,退款,购物车相关)
1、初始化业务场景数据
接口自动化在测试支付流程时,每一个子场景都是闭环(下单-支付-退款-退还氧分和红包),保证下一次脚本关联的红包等都是可用的;but,当我们的脚本异常中断时,会造成场景被破坏(如金额异常,生成了订单,但是没有支付,此时红包和氧分等已被锁定),下次脚本数据再执行时也会报错,此时需要手动将订单取消或者退款,才能执行脚本;上述的情景增加了手动清除数据的工作,不够自动化,基于此,我们在执行场景化测试时需要先初始化数据
思路:在执行交易的场景前,先查询数据库,将关联pid=424926的订单都退款或者取消订单;同时将购物车清空,保证脚本执行前,没有任何依赖被破坏;由于污染的数据可能存在多个,所以需要将循环执行将数据恢复完全
2、举例说明,以清空购物车为例
1是执行的数据库查询(jdbc request)
2是连接的数据库驱动(由于一个完整的脚本有可能连接不同的数据库地址或者不同的用户名和密码),驱动连接需要一致
3是sql语句,查询uid=8960092的uid对应的有效的购物车数据
4是引用的变量的名称(接下来的接口需要调用该变量去作为传参)

接下来添加循环控制器的变量${shopcarid009_#}(配置的格式是sql取值的格式)
循环控制器下需要增加计数器counter,目的是根据sql查询的数据来统计执行次数

1.查询出sql的数据后,需要根据counter来判断初始执行的值,配置为1就是从第一个开始执行
2.循环取值每次=1
3.计数最大值${shopcarid009_#}
4.供接口调用的变量

接口调用:注意该–V函数的使用,两个变量组合在一起的使用方式
至此,清空购物车初始化完毕。
浙公网安备 33010602011771号