需求:商城端下单,分为几种不同的类别订单(如团购、拼团、普通),没有优惠价的就是普通商品,下单后需要验证订单类型。
思路:普通商品下单,再查询数据库,订单类型为普通

Step1-添加元素
1、test plan添加用户端token参数,存放商城端的token值,该值可以在该test plan下多个thread groups中使用。
2、添加元素
- http request defaults: 存放主机地址
- http header manager:存放通用http header参数
- jdbc connection configuration: 配置数据库
- http request(commitOrder):提交订单,需添加一个正则提取器,提取订单号
- JDBC request(searchOrderClassfy):查询数据库,需添加一个bean shell assertion判断结果
- view results tree: 查看请求结果

Step2-设置参数

设置jdbc的连接信息,URL规则为 jdbc:mysql://127.0.0.1:portnum/dbname

正则表达式,用于获取18位的订单号,存放到OrderNo参数里。由于配送方式不同,会拆分成两个不同的订单。需要查询出两个订单号对应的订单类型,如下:
SELECT classify FROM order_tm_order_info WHERE order_no ='${OrderNo_1}' or order_no ='${OrderNo_2}';
Step3-判断规则
同样用正则表达式匹配数据库查询结果,如果未匹配到订单类型,则测试失败;获取到了订单类型,需要判断是不是普通订单类型,不是普通类型,则测试失败,是普通类型,则测试通过。bean shell脚本如下:
import java.util.regex.*;
String resp = prev.getResponseDataAsString();
Pattern p = Pattern.compile("(\\d)");
Matcher m = p.matcher(resp);
if(!m.find()){
Failure = true;
FailureMessage="未找到订单号";
}
while(m.find()){
log.info("group(1):" + m.group(1));
int orderType =Integer.parseInt(m.group(1));
if(orderType != 0){
Failure = true;
FailureMessage="订单类型不准确";
}
}
Step4-测试结果

本文详细介绍了一种在商城端验证订单类型的自动化测试方案,包括普通商品下单、订单信息查询及订单类型验证的具体步骤,利用JMeter进行测试,并通过Beanshell脚本实现结果判断。
609

被折叠的 条评论
为什么被折叠?



