开始写脚本!
测试计划
1.设置全局变量user defined variables
2.设置执行方式
线程组
-
Thread Group 直接并发多少线程,持续多长时间【常量加压】
-
jp@gc - Ultimate Thread Group:梯度加压【线性加压、持续多长时间、线性停止】
-
jp@gc - Stepping Thread Group (deprecated)步长加压,一般用于高并发找到极值并发数。【设置线程增加、停止策略,多长时间增加多少线程、持续多长时间、多长时间停止多少线程】
-
bzm - Concurrency Thread Group:设置线程总数、到达线程总数时间、分几次释放、到达线程总数后持续多长时间【停止策略,瞬间释放所有线程。】
-
bzm - Arrivals Thread Group:QPS概念 在t时间段达到最大QPS设置值,其中经过m次阶梯增长,并在最大QPS处持续tt时间
-
bzm - Free-Form Arrivals Thread Group:QPS概念,较随意
用户场景脚本设计
-
Transaction Controller:设置事务,根据场景分析、用户行为,划分事务,事务下有一个或多个请求,比如下单:进入商品详情、点击购买调购买接口等
-
HTTP Request【取样器】:根据用户行为分析,将所有涉及到的接口取样器设置完成
其中:
1.server信息【协议、域名、端口】:提取为全局变量【放在测试计划,或者HTTP Request Defaults配置元件中】
2.请求信息【请求方法、path、编码】
3.请求参数【根据提交方式选择】:不变的字段直接写死、变化的参数【参数化、上下文关联】 -
HTTP Header Manager、HTTP Cookie Manager:header、cookie处理
设置token、cookie、header等变量信息。 -
CSV Data Set Config【配置元件】:登陆信息等参数化
其中:
1.可以直接在数据库查询导出
2.参数之间用,隔开
3.设置配置元件参数:文件路径、参数变量、是否循环等 -
JSR223 PostProcessor、JSON Extractor【后置处理器】:上下文变量关联
1.设置变量名称
2.匹配变量的表达式:jsonpath
3.JSR223 PostProcessor:可以编辑脚本groovy,定义变量,处理响应中的数据传递给变量。 -
Loop Controller【循环控制器】、If Controller【条件控制器】:接口接口比例,设置逻辑控制器或者条件控制器
-
Counter:递增产生数据,适用于有规律的命令字段。
$