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

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

开发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串

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

在这里插入图片描述

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/104798.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux】常用命令

目录 文件解压缩服务器文件互传scprsync 进程资源网络curl发送简单get请求发送 POST 请求发送 JSON 数据保存响应到文件 文件 ls,打印当前目录下所有文件和目录; ls -l,打印每个文件的基本信息 pwd,查看当前目录的路径 查看文件 catless:可以左右滚动阅读more :翻…

什么是C++?

1.什么是C C语言是结构化和模块化的语言,适合处理较小规模的程序。对于复杂的问题,规模较大的 程序,需要高度的抽象和建模时,C语言则不合适。为了解决软件危机, 20世纪80年代, 计算机 界提出了OOP(object o…

智能AI创作系统ChatGPT详细搭建教程/AI绘画系统/支持GPT联网提问/支持Prompt应用/支持国内AI模型

一、智能AI创作系统 SparkAi创作系统是基于OpenAI很火的ChatGPT进行开发的Ai智能问答系统,支持OpenAI GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI创作…

Flex 词法分析实验实现(电子科技大学编译技术Icoding实验)

Flex 词法分析 此为电子科技大学编译技术 实验1:词法分析 将具体实现中的三个文件和自己的实验报告一起上传才能通过 根据词法分析实验中给定的文法,利用 flex 设计一词法分析器,该分析器从标准输入读入源代码后,输出单词的类别编…

Feign 调用为何POST不支持同时传入多个SpringQueryMap对象,但是GET方法就支持?

Feign 调用为何POST不支持同时传入多个SpringQueryMap对象,但是GET方法就支持? 1.1 问题背景1.2 原因分析1.3 修复方案1.3.1 修复方案一 切换使用GET方法,可以试用多个SpringQueryMap注解 (测试实际不行)1.3.2 修复方案…

C/C++陷阱——变量名和函数名的冲突问题

C语言/C陷阱——变量名和函数名的冲突问题 先来看这两串代码&#xff1a; 代码一&#xff1a; #include <stdio.h> #include <stdlib.h>int rand 1;int main() {printf("%d\n", rand);return 0; }代码二&#xff1a; #include <stdio.h> #inc…

C++ 线程安全注解

实例开篇 线程安全注解是现代C开发的机制&#xff0c;通常在编译期可以帮助发现一些线程安全问题。 下面直接从实例中来理解。 class Account { private:Mutex mu;int money GUARDED_BY(mu);void Sub(int amount) {money - amount; // writing variable money requires h…

基于php+thinkphp+vue的校园二手交易网站

运行环境 开发语言&#xff1a;PHP 数据库:MYSQL数据库 应用服务:apache服务器 使用框架:ThinkPHPvue 开发工具:VScode/Dreamweaver/PhpStorm等均可 项目简介 随着社会的发展&#xff0c;社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发…

43.241.18.123哪些问题会导致服务器里面时间错误

我们在使用服务器的过程中&#xff0c;有时候可能会发现&#xff0c;服务器里面时间跟标准的时间对不上&#xff0c;那服务器里面时间错误可能由哪些问题引起&#xff1a; 硬件问题&#xff1a;服务器硬件中的时钟或电池可能损坏或失效&#xff0c;导致时间不准确或重置为默认…

2024年计算机专业Java选题推荐✅(最新、最全、最容易通过的选择)

文章目录 前言选题和具体实现详细视频演示为什么选择我自己的网站自己的小程序&#xff08;小蔡coding&#xff09;有保障的售后 代码参考源码获取 前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者&#x…

【LeetCode刷题(数据结构)】:对称二叉树

给你一个二叉树的根节点 root 检查它是否轴对称 输入&#xff1a;root [1,2,2,3,4,4,3] 输出&#xff1a;true 输入&#xff1a;root [1,2,2,null,3,null,3] 输出&#xff1a;false 提示&#xff1a; 树中节点数目在范围 [1, 1000] 内 -100 < Node.val < 100 对称二叉…

Aviator表达式引擎

一、快速介绍 &#xff08;一&#xff09;Aviator Aviator是一个用于动态表达式求值的高性能、轻量级Java引擎。以下是一些关于Aviator引擎的重要特点和设计目标&#xff1a; 轻量级和高性能&#xff1a; Aviator的设计目标之一是轻量级和高性能。它的大小很小&#xff0c;加…

PyQt中线程和线程信号的使用

PyQt中的线程和线程信号是用于在应用程序中实现多线程编程的重要概念。线程允许你在应用程序中同时执行多个任务&#xff0c;而线程信号用于在不同线程之间进行通信和协调。以下是关于PyQt中线程和线程信号的简要解释&#xff1a; 线程&#xff1a; 线程是应用程序中的并发执行…

@Component 和 @Bean的区别

Component 和 Bean 是Spring框架中用于管理和配置依赖注入的关键注解&#xff0c;用于定义和管理Spring应用程序中的组件。 Component: Component 是一种泛用型的Spring注解&#xff0c;用于标识一个类为Spring组件。Spring会自动扫描所有带有Component 注解的类&#xff0c;并…

介绍一下mysql有哪些索引类型

以下是MySQL的8种不同索引类型的比较&#xff0c;以帮助你了解它们的特点和适用场景&#xff1a; 索引类型用途和特点适用场景B-Tree 索引用于范围查询、等值查找和排序操作大多数查询 &#xff0c;不适合全文搜索和空间数据。唯一索引保证索引列的值唯一&#xff0c;不允许重…

PTA程序辅助设计平台—2023年软件设计综合实践_4(数组及字符串)

6-1 找最小元素/选择排序 - C/C 数组及字符串 &#xff08;找最小元素&#xff09;对于给定的包含10个元素的整数数组&#xff0c;设计一个函数&#xff0c;从数组给定的下标范围[i,j]里找到值最小的元素&#xff0c;返回其下标。该函数的原型可以是int findMin(int a[], int …

【Redis】Java客户端使用list命令

lpush/lrange rpush/rpop/lpop blpop/brpop llen

mac使⽤nginx

⽅法1&#xff1a;homebrew 默认本地已经安装homebrew&#xff1b; 安装与启动 brew install nginx 安装nginx&#xff1b; brew services start nginx 启动nginx nginx⽂件⽬录 1. nginx安装⽂件⽬录/usr/local/Cellar/nginx 2. nginx配置⽂件⽬录/usr/local/etc/nginx 3. con…

Windows 多媒体编程库 DirectX 介绍

目录 1、什么是DirectX&#xff1f; 2、使用DirectX的好处 2.1、DirectX为软件开发者提供硬件无关性 2.2、为硬件开发提供策略 3、DirectX的主体构成 3.1、Direct3D 3.2、DirectDraw 3.3、DirectPlay 3.4、DirectSound 3.5、DirectMusic 3.6、DirectInput 4、Dire…

谈谈多线程与多线程同步

一、线程展开说说 二、走近多线程同步