在响应断言中,我有一些模式可以测试该值。
"isDefault":false,"companyId":"${__javaScript(${Company}.toLowerCase())}","folderPath":null
我不想更改变量$ {Company}的值,我只想检查我收到的内容是否为小写字母。
这是断言结果:
断言错误:否断言失败:真断言失败 消息:测试失败:文本应包含 /“ isDefault”:false,“ companyId”:“”,“ folderPath”:null /
答案 0 :(得分:1)
您需要在${Company}
变量引用周围加上引号,例如:
"isDefault":false,"companyId":"${__javaScript("${Company}".toLowerCase(),)}","folderPath":null
请注意,不建议使用__javaScript()函数,因为涉及高负载时JavaScript解释器的性能可能是一个很大的问号,因此请考虑以下替代方法:
使用__groovy()的recommended approach to scripting since JMeter 3.1函数
"isDefault":false,"companyId":"${__groovy(vars.get("Company").toLowerCase(),)}","folderPath":null
使用__lowerCase() function(这不是JMeter官方发行版的一部分,您需要使用JMeter Plugins Manager进行安装)
isDefault":false,"companyId":"${__lowercase(${Company},)}","folderPath":null
所有方法的演示: