在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序列化成字符串了,所以提交请求的参数中直接使用这个变量即可

相关推荐
zephyr058 分钟前
C++ STL unordered_set 与 unordered_map 完全指南
开发语言·数据结构·c++
TAEHENGV15 分钟前
React Native for OpenHarmony 实战:数学练习实现
javascript·react native·react.js
CDwenhuohuo15 分钟前
安卓app巨坑 nvue后者页面要写画笔绘制功能nvue canvas
前端·javascript·vue.js
Never_Satisfied25 分钟前
在JavaScript / HTML中,HTML元素自定义属性使用指南
开发语言·javascript·html
Ulyanov29 分钟前
大规模战场数据与推演:性能优化与多视图布局实战
开发语言·python·性能优化·tkinter·pyvista·gui开发
前端 贾公子30 分钟前
husky 9.0升级指南
javascript
nsjqj30 分钟前
JavaEE初阶:多线程初阶(2)
java·开发语言
明天…ling35 分钟前
php底层原理与安全漏洞实战
开发语言·php
爱说实话42 分钟前
C# DependencyObject类、Visual类、UIElement类
开发语言·c#
智码未来学堂44 分钟前
C语言指针:打开通往内存世界的大门
c语言·开发语言