我已编写此脚本来验证字段类型,但我不确定它是否正确验证。此外,我想验证所有预期的字段是否可见。 这是我的BSF断言:
import groovy.json.*;
def response = prev.getResponseDataAsString();
def json = new JsonSlurper().parseText(response)
def eventName = json.event_name
(eventName.getClass() == String)
def eventDate = json.event_start
(eventDate.getClass() == Date)
def attendeeLimit = json.attendee_limit
(attendeeLimit.getClass() == Integer)
def orderCount = json.order_count
(orderCount.getClass() == Integer)
def attendanceLimit = json.attendance_limit_on
(attendanceLimit.getClass() == String)
答案 0 :(得分:0)
如果要检查JSON响应数据类型,请更改
之类的行(eventName.getClass() == String)
到
assert eventName instanceof String
我建议将BSF Assertion切换到JSR223 Assertion,因为它能够编译脚本和缓存,因此您的脚本将运行得更好。有关全面解释和脚本编写最佳做法,请参阅Beanshell vs JSR223 vs Java JMeter Scripting: The Performance-Off You've Been Waiting For!文章。
JSON Path Assertion还提供JMeter Plugins,此主要用于检查回复内容