【问题标题】:Trying to fetch data from the request body尝试从请求正文中获取数据
【发布时间】:2022-08-02 23:37:34
【问题描述】:

我正在使用有效负载对以下 URL 进行后调用,我想获取值 new_namemib_title。通过后处理器

发布https://api.dev.net/api/data/v9.0/new_studies

POST data:
{\"new_readenddate\":\"2022-08-04T08:03:08.26Z\",\"new_studystatus\":100000001,\"new_serviceenddate\":\"2022-08-24T08:03:08.26Z\",\"new_phase\":100000000,\"new_SponsorOrganization@odata.bind\":\"/cr420_sponsors(0d8ab049-eb08-ed11-82e4-002248093996)\",\"new_SponsorOrganization@OData.Community.Display.V1.FormattedValue\":\"0VFRwqrK\",\"cr420_contractvalue\":22424,\"new_readstartdate\":\"2022-08-04T08:03:08.26Z\",\"new_servicestartdate\":\"2022-07-31T08:03:08.26Z\",\"new_studystate\":100000000,\"new_globalstudyid\":\"2224\",\"mib_title\":\"PERF2VxlO3BPI\",\"new_name\":\"PERF6TruGhT8M\",\"mib_isretry\":false,\"mib_flowstate\":913380000,\"statuscode\":1,\"statecode\":0,\"ownerid@odata.bind\":\"/systemusers(6d94fcb3-32e2-ec11-bb3d-000d3a3437fc)\",\"ownerid@OData.Community.Display.V1.FormattedValue\":\"PerformanceExecuter\"}
Cookie Data:
ReqClientId=24552c6c-7e0b-43cb-b59e-953a77233416; 

已添加后处理器以使用以下代码检索 JSR223 后处理器,

import groovy.json.JsonSlurper
def requestPayLoad = \"\";
sampler.getArguments().each {arg ->
    requestPayLoad = arg.getStringValue()   
}
def removedSymbolPayload = requestPayLoad.replace(\'=\', \'\');
removedSymbolPayload.each { getKeyValue ->
     log.info(\"Key = \" + getKeyValue)
    }

我得到的回应是,

2022-08-02 20:03:08,899 INFO o.a.j.e.J.JSR223 PostProcessor: Key = {
2022-08-02 20:03:08,899 INFO o.a.j.e.J.JSR223 PostProcessor: Key = \"
2022-08-02 20:03:08,899 INFO o.a.j.e.J.JSR223 PostProcessor: Key = n
2022-08-02 20:03:08,899 INFO o.a.j.e.J.JSR223 PostProcessor: Key = e
2022-08-02 20:03:08,899 INFO o.a.j.e.J.JSR223 PostProcessor: Key = w
2022-08-02 20:03:08,899 INFO o.a.j.e.J.JSR223 PostProcessor: Key = _
2022-08-02 20:03:08,899 INFO o.a.j.e.J.JSR223 PostProcessor: Key = r
2022-08-02 20:03:08,899 INFO o.a.j.e.J.JSR223 PostProcessor: Key = e
2022-08-02 20:03:08,899 INFO o.a.j.e.J.JSR223 PostProcessor: Key = a
2022-08-02 20:03:08,899 INFO o.a.j.e.J.JSR223 PostProcessor: Key = d
2022-08-02 20:03:08,899 INFO o.a.j.e.J.JSR223 PostProcessor: Key = e
2022-08-02 20:03:08,899 INFO o.a.j.e.J.JSR223 PostProcessor: Key = n
2022-08-02 20:03:08,899 INFO o.a.j.e.J.JSR223 PostProcessor: Key = d
2022-08-02 20:03:08,899 INFO o.a.j.e.J.JSR223 PostProcessor: Key = d
2022-08-02 20:03:08,899 INFO o.a.j.e.J.JSR223 PostProcessor: Key = a
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = t
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = e
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = \"
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = :
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = \"
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = 2
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = 0
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = 2
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = 2
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = -
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = 0
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = 8
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = -
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = 0
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = 4
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = T
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = 0
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = 8
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = :
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = 0
2022-08-02 20:03:08,900 INFO o.a.j.e.J.JSR223 PostProcessor: Key = 3(contd..)

我在这里做错了什么

    标签: jmeter


    【解决方案1】:

    为什么需要从要求?它是谁发送请求,您应该事先知道属性的值,如果您不知道 - 这意味着您的测试设计不当。

    任何

    您正在寻找的代码类似于:

    def body = new groovy.json.JsonSlurper().parseText(sampler.getArguments().getArgument(0).getValue())
    
    def new_name = body.new_name
    def mib_title = body.mib_title
    
    log.info('new_name=' + new_name)
    log.info('mib_title=' + mib_title)
    

    演示:

    更多信息:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-30
      • 2020-10-09
      • 1970-01-01
      相关资源
      最近更新 更多