如何参数化json文件中的值 - loadrunner

时间:2018-03-18 12:19:41

标签: performance testing loadrunner vugen

在REST api的loadrunner脚本中需要一些帮助。我要求LR脚本应该始终替换唯一参数,并且此参数应该是Json主体的一部分。我正在使用的文件很大。因此,我在LR的额外文件中创建了payload.json。在Bodyfilepath中,我给出了json文件的这个名字。 在payload.json中,我已经参数化了一个值(每次迭代需要唯一),以使请求成功。但是,这个参数值不会被替换。 任何人都可以帮助我或共享有助于用参数值替换json文件中的值的代码 谢谢

1 个答案:

答案 0 :(得分:0)

看来你不能直接在加载的文件上进行参数替换,因此需要手动加载JSON然后将其用作主体。 以下是如何执行此操作的示例:

lr_read_file("test.json", "test", 0);
lr_save_string(lr_eval_string(lr_eval_string("{test}")),"myjson");


lr_eval_json("Buffer={myjson}", 
             "JsonObject=myjson", 
             LAST);
lr_json_stringify("JsonObject=myjson","Format=compact","OutputParam=Result",LAST );


web_rest("My POST",
    "URL=http://myserver.com",
    "Method=POST",
    "EncType=raw",
    "Snapshot=t536990.inf",
//  "Body={\"store\": \"{ts}\"}", this is what the JSON contains 
//                                and I have a parameter named ts
    "Body={Result}",
    HEADERS,
    "Name=Content-Type", "Value=application/json", ENDHEADER,
    LAST);