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

发布时间 2023-11-28 20:51:24作者: 软件测试潇潇
 

一般的接口文档描述的内容:

开发get请求的脚本,接口文档的描述如下:

在loadrunner里面创建一个空脚本:

在action空白处,点击insert—>step

输入web_custom_request,双击选择该函数,填入如下几个参数值:

生成的脚本如下:

运行编译,看有没有语法错误:

在日志里面看到返回了code=0,说明接口请求是成功的,在这里不要关注返回的乱码信息

是不是觉得get请求的脚本很容易搞定了,接下来看post请求的,还是用上面的函数完成。

用post请求开发登录接口的脚本:文档说明如下,参数很少。

填入如下的值:

生成的脚本内容如下:

编译运行脚本,看日志信息:日志级别需要调整到如下级别

脚本都已经成功开发完了,那么是不是有一个问题?在跑场景的时候,怎么知道我的脚本一直都是成功的呢?

是不是有一些小伙伴在平时的脚本运行的时候,脚本都没有报错,但是实际插入到数据库的数据没有增加的情况?

这个问题肯定很多小伙伴都遇到过,那怎么办呢?

就是需要对脚本的返回值进行if判断,当成功的时候,就pass,失败了就fail,这样事务也会自动的去统计成功或失败

  • 先来在脚本中添加事务

开始事务

结束事务

 

  • if判断要怎么写呢?

回到刚才回放的日志里面,用之前讲过的关联的方法,双击code=0这一行

 

web_reg_save_param("code", //变量的名称

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

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

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

LAST);

这里再教大家一个方法,进入到loadrunner的帮助文档,查看每个函数的使用,loadrunner界面,按下键盘的F1,在输入框输入函数名称,比如atoi

当有多个示例的时候,HTTP协议的选择C语言

判断如下:

// 写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信息

总结

目前已经学习了几个常用的请求函数,作用如下:

  • Web_url:只能用于get请求
  • Web_submit_data:get,post,提交form表单
  • Web_custom_request:即可用于get,也可用于post请求,post请求是标准的json串

最后如果你想学习软件测试和需要软件测试资料,欢迎加入笔者的交流群:320231853,里面可以免费领取软件测试+自动化测试资料+软件测试面试宝典+简历模版+实战项目+面试刷题工具和大佬答疑解惑,我们一起交流一起学习!