梦幻小丑灯 发表于 2023-11-29 10:41:52

只需根据接口文档,就能轻松开发 get 和 post 请求的脚本,你会做吗?

https://pic4.zhimg.com/80/v2-86ef13870513aca074b9c80fcb3d4ceb_720w.webp一般的接口文档描述的内容:https://pic1.zhimg.com/80/v2-97317b75548e003107bbd8cb48becb1c_720w.webp开发get请求的脚本,接口文档的描述如下:https://pic2.zhimg.com/80/v2-fd86cc6de8d8b0a807fa125fd23fb38d_720w.webp在loadrunner里面创建一个空脚本:https://pic4.zhimg.com/80/v2-ec22f5a3f76b3810a3017157d93b39af_720w.webp在action空白处,点击insert—>stephttps://pic2.zhimg.com/80/v2-df4aef4ee52ae33deb79e29ca9944e31_720w.webp输入web_custom_request,双击选择该函数,填入如下几个参数值:https://pic3.zhimg.com/80/v2-ea48dbb9831b713d094ed8527a88245a_720w.webp生成的脚本如下:https://pic2.zhimg.com/80/v2-5c55450e88614c4ef986085aaae6891d_720w.webp运行编译,看有没有语法错误:在日志里面看到返回了code=0,说明接口请求是成功的,在这里不要关注返回的乱码信息https://pic4.zhimg.com/80/v2-5db43ba982b67b9608fad2ad80d1fb6b_720w.webp是不是觉得get请求的脚本很容易搞定了,接下来看post请求的,还是用上面的函数完成。用post请求开发登录接口的脚本:文档说明如下,参数很少。https://pic2.zhimg.com/80/v2-2f703a441c3088dd2cf00b45bc42ed9d_720w.webp填入如下的值:https://pic3.zhimg.com/80/v2-6534884a88825c83993a4896fc52b272_720w.webp生成的脚本内容如下:https://pic2.zhimg.com/80/v2-0a31f38a27eefb3940914b415eee8ae1_720w.webp编译运行脚本,看日志信息:日志级别需要调整到如下级别https://pic1.zhimg.com/80/v2-dbcbafc2b6f2960031f9fbb7667029e0_720w.webphttps://pic3.zhimg.com/80/v2-a8be4c77a7e9a3a62bb75b3b2eaa46fa_720w.webp脚本都已经成功开发完了,那么是不是有一个问题?在跑场景的时候,怎么知道我的脚本一直都是成功的呢?是不是有一些小伙伴在平时的脚本运行的时候,脚本都没有报错,但是实际插入到数据库的数据没有增加的情况?这个问题肯定很多小伙伴都遇到过,那怎么办呢?就是需要对脚本的返回值进行if判断,当成功的时候,就pass,失败了就fail,这样事务也会自动的去统计成功或失败
[*]先来在脚本中添加事务
开始事务https://pic3.zhimg.com/80/v2-d61479b50221d060b4715ac3108d0f4a_720w.webp结束事务https://pic3.zhimg.com/80/v2-6165173733fc2dfee7dfb715b8e4c6f6_720w.webp
[*]if判断要怎么写呢?
回到刚才回放的日志里面,用之前讲过的关联的方法,双击code=0这一行https://pic2.zhimg.com/80/v2-5b026a4996a5e6ba2431783c847c1339_720w.webphttps://pic3.zhimg.com/80/v2-ef2869a6a3253e969388ed1b84ad56a2_720w.webp <font size="3">web_reg_save_param("code", //变量的名称

"LB=\"code\":", //左边界值,双引号需要加上转义符

"RB=,", //右边界值

"Ord=1", //多个值时,取第几个

LAST);</font>
这里再教大家一个方法,进入到loadrunner的帮助文档,查看每个函数的使用,loadrunner界面,按下键盘的F1,在输入框输入函数名称,比如atoihttps://pic2.zhimg.com/80/v2-96e0235c1200b60e2176ece12fb0740d_720w.webp当有多个示例的时候,HTTP协议的选择C语言https://pic3.zhimg.com/80/v2-4a62fb87936b70efbd42f954e99b88ba_720w.webphttps://pic4.zhimg.com/80/v2-8e45dcc5b6204cbbf0e37782dda1908b_720w.webp判断如下:<font size="3">// 写if判断

// int atoi( 需要转换成整型的字符 ); //把指定的字符转换成整型

// char *lr_eval_string( 当前想要获取的参数名 ); // 获取指定的当前参数的值

if(atoi(lr_eval_string("{code}"))==0) { //当code=0的时候,事务是成功的

lr_end_transaction("login", LR_PASS);

} else { //当code不等于0的时候,事务是失败的

lr_end_transaction("login", LR_FAIL);

} 运行脚本,在日志里面可以看到pass信息</font>
https://pic4.zhimg.com/80/v2-dd356c8c26e898a41d703ad0fcbf75a7_720w.webp总结目前已经学习了几个常用的请求函数,作用如下:
[*]Web_url:只能用于get请求
[*]Web_submit_data:get,post,提交form表单
[*]Web_custom_request:即可用于get,也可用于post请求,post请求是标准的json串













页: [1]
查看完整版本: 只需根据接口文档,就能轻松开发 get 和 post 请求的脚本,你会做吗?