在jmeter中使用javascript脚本

工作上遇到一个压力测试的需求,需要测试几个考试相关的接口。其中有一个获取试题详情的接口,和一个提交答题信息的接口。后一个接口以上一接口的返回内容为参数,添加上用户的答案即可。jmeter提供了非常多的方式可以实现该需求,这里只记录如何使用javascript来处理。

取出请求响应内容

在获取试题详情的接口上添加post processor,将返回的内容保存到变量questionItem上,以便进行后续处理
官方文档:https://jmeter.apache.org/usermanual/component_reference.html#JSON_Extractor

使用javascript代码处理

还是在该接口上添加post processor,注意需要在上一步添加的提取器的后面
官方文档:https://jmeter.apache.org/usermanual/component_reference.html#JSR223_PostProcessor

语言这里选择javascript

填写如下代码,代码中的vars.get("questionItem")是取出第一步中提取出来的变量的内容,字符串格式。使用JSON.parse转成对象后即可进行操作了。处理完成后,再使用JSON.stringify序列化成字符串后更新questionItem的值

需要注意可能没法使用ES6语法,如果报错,可以点击jmeter右上角的三角形图标打开log窗口查看报错原因。

官方文档说提供了很多的参数,这里只使用了vars这个对象,且只作字符串的存取,方便后面的使用

使用

由于先前已经使用JSON.stringify序列化成字符串了,所以提交请求的参数中直接使用这个变量即可

相关推荐
乌暮32 分钟前
深入理解 Java 泛型:把「万能盒子」用对、用稳
java·开发语言·后端·学习
行者-全栈开发41 分钟前
【前端/JS框架】CVE-2026-3854:GitHub Enterprise Server X-Stat注入XSS漏洞深度剖析与紧急修复指南
前端·javascript·github
2601_962218611 小时前
C语言中三种库的编译和使用方法
开发语言·c++
传奇开心果编程1 小时前
中庸、有容、破执:仓颉编程语言的中华智慧结晶——三重哲学境界思辨
开发语言·华为·开源·软件工程
jimy11 小时前
派生类重写基类虚函数(二):override的作用
开发语言·c++
_upupup2 小时前
异常(C++)
java·开发语言·jvm
霸道流氓气质2 小时前
ComfyUI 图像生成工作流完全指南:从节点编排到Java生产级图像生产实战
java·开发语言·人工智能
怕浪猫2 小时前
2026年金九银十,我面了22个前端
前端·javascript·面试
前端的日常2 小时前
一个人+AI做情侣食谱小程序,30天纯赚
前端·javascript·后端
ShyanZh3 小时前
【Python3基础】13-Python 常用设计模式
开发语言·python·设计模式