【jmeter】-脚本-遇自动转义要使用CSV文件

1、问题现象

jmeter运行遇到类似报错:

{

"traceId": "b62310d64246a0b3",

"code": 999,

"uploadable": "0",

"detailMsg": null,

"level": 0,

"displayCode": "999-999-999999",

"message": "Unexpected character ('b' (code 98)): was expecting comma to separate Object entries\n at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 5961]"

}

{

"traceId": "f352c431083ee35f",

"code": 999,

"uploadable": "0",

"data": null,

"detailMsg": null,

"level": 0,

"displayCode": "999-999-999999",

"errorDetail": null,

"message": "JSON parse error: Unexpected character ('i' (code 105)): was expecting comma to separate Object entries; nested exception is com.fasterxml.jackson.core.JsonParseException: Unexpected character ('i' (code 105)): was expecting comma to separate Object entries\n at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 2233]",

"confirmIds": null

}

2、解决办法

不要在取样器-HTTP请求-消息体数据中直接粘贴请求体;

要用CSV获取文件中的请求体,然后在取样器-HTTP请求-消息体数据中使用变量引用;(如果还需要对请求体进行修改,则再使用JSR223 预处理程序)

3、原因分析

在 HTTP 请求的 "Body Data" 或 "Parameters" 区域直接输入 JSON 字符串时,JMeter 可能会自动处理转义字符。

使用 CSV Data Set Config 从 CSV 文件读取数据时,JMeter 会将文件中的内容作为原始字符串处理,不会自动进行转义。

在 HTTP 请求的 "Body Data" 或 "Parameters" 区域直接输入 JSON 字符串:

{\\\"isMustHaveBill\\\":\\\"false\\\",\\\"sendtowms\\\":\\\"false\\\",\\\"isGenerateBarcode\\\":\\\"false\\\",\\\"isUpdateStock\\\":\\\"true\\\",\\\"isUpdateCost\\\":\\\"true\\\"}--截取部分

jmeter发送请求,从查看结果树中查看,发现自动转义成了:

{\\"isMustHaveBill\\":\\"false\\",\\"sendtowms\\":\\"false\\",\\"isGenerateBarcode\\":\\"false\\",\\"isUpdateStock\\":\\"true\\",\\"isUpdateCost\\":\\"true\\"}--截取部分

相关推荐
se-tester5 天前
JMeter、Postman 和 SoapUI 在做接口测试上的优势和缺点
测试工具·jmeter·接口测试·postman·soapui
xixi09245 天前
selenium IDE——command
selenium·测试工具
xixi09245 天前
selenium IDE安装使用教程
ide·selenium·测试工具
Wpa.wk6 天前
har文件转为接口自动化测试用例
运维·测试工具·自动化·测试用例·接口自动化
Wpa.wk6 天前
ubuntu22桌面版安装
经验分享·测试工具
feathered-feathered6 天前
测试实战【用例设计】自己写的项目+功能测试(1)
java·服务器·后端·功能测试·jmeter·单元测试·压力测试
007张三丰6 天前
软件测试专栏(6/20):Selenium从0到1实战指南:元素定位、等待机制与框架封装
selenium·测试工具
测试老哥6 天前
如何使用Postman做接口测试?
自动化测试·软件测试·python·测试工具·测试用例·接口测试·postman
安全不再安全6 天前
某驱动任意读漏洞分析 - 可用于游戏内存数据读取
c语言·测试工具·安全·游戏·网络安全