0
我在JMeter测试用例中添加了一个BeanShell Assertion。 我想从API中检查JMeter中的JSON文档。JMeter Beanshell groovy脚本不起作用
我的剧本是这样的:
import groovy.json.*
def jsonText = '''
{
"message": {
"header": {
"from": "mrhaki",
"to": ["Groovy Users", "Java Users"]
},
"body": "Check out Groovy's gr8 JSON support."
}
}
'''
def json = new JsonSlurper().parseText(jsonText)
def header = json.message.header
assert header.from == 'mrhaki'
assert header.to[0] == 'Groovy Users'
assert header.to[1] == 'Java Users'
assert json.message.body == "Check out Groovy's gr8 JSON support."
如果我想开始我的测试用例,我在我的查看结果树如下回应:
Assertion error: true
Assertion failure: false
Assertion failure message: org.apache.jorphan.util.JMeterException: Error invoking bsh method: eval In file: inline evaluation of: ``import groovy.json.* def jsonText = ''' { "message": { "header": { . . . '' Encountered "def" at line 3, column 1.
我该如何解决这个问题?
尝试使用JSR223断言具有相同的代码,但选择时髦的语言 – ararar
如果我” m在JSR223断言中使用语言groovy尝试脚本时,我没有收到我的结果树中JSR223声明的反馈。但是测试必须失败。 – fcb1900
你能解释为什么它会失败,就像你改变(assert header.to [1] =='Java Users')为(assert header.to [1] =='Java Users123123')它会失败。 – ararar