loadrunner11 测试restful
loadrunner不知道为啥会有这么大的体积。
一开始用的是c脚本,可是恶心的是又不是完全的c,读文件的fseek居然没有。
后来又折腾java脚本,发现loadrunner11 java要用jdk 1.6而且是32位的才行,终于开工了。
语法是完全的java这点好。
先导入loadrunner自带的包。
import lrapi.lr;
import lrapi.web;
逻辑代码就和正常的java一样,甚是顺手。
web.reg_save_param保存请求返回的数据,第一个参数相当于保存的变量,第二个是过滤条件。
我们返回的是json,可以通过第三方库来直接解析json,不过只需要json里的某些字段,导入json解析,反而有点麻烦了。
"LB=version\":", "RB=,",LB表示搜索的起始,这里表示从version":开始查找,RB表示结束,留空表示结尾,引号"要用\转义,"LAST"表示结束标记。
取出保存的值用lr.eval_string("<ResponseBody>").
web.reg_save_param("ResponseBody", new String[]{"LB=version\":", "RB=,", "Search=Body", "LAST"}); String htmlBody = "Body=loadtest=1¶m={\"userId\":1790}"; try { web.custom_request("apply/check", this.reqType, new String[]{ "URL=http://192.168.18.227/apply/check", "Method=POST", htmlBody, // String object is not in quotes "LAST"}); String result = lr.eval_string("<ResponseBody>"); return result; } catch (Exception e) { return ""; }
对于c语言版的则是把lr.或web.前缀改为lr_或web_,并include相应的头文件
作者:半山
出处:http://www.cnblogs.com/xdao/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
【推荐】AI 的力量,开发者的翅膀:欢迎使用 AI 原生开发工具 TRAE
【推荐】2025 HarmonyOS 鸿蒙创新赛正式启动,百万大奖等你挑战
· 记一次 C# 平台调用中因非托管 union 类型导致的内存访问越界
· [EF Core]聊聊“复合”属性
· 那些被推迟的 C# 14 特性及其背后的故事
· 我最喜欢的 C# 14 新特性
· 程序员究竟要不要写文章
· 我是不是很有钱?
· 遭遇疯狂 cc 攻击的一个周末
· 【EF Core】聊聊“复合”属性
· GPT‑5 重磅发布
· 美丽而脆弱的天体运动:当C#遇见宇宙混沌