【Robot Framework】发送GET和POST请求

news2024/12/23 2:07:36

做接口自动化时,经常要使用GET与POST请求,那么如何使用RF发送对应的请求呢?

一、安装RequestsLibrary

pip install robotframework-requests

安装以后,导入到对应的测试套件或测试用例中.

本次主要介绍通过RequestsLibrary来实现接口自动化。

二、创建会话

使用create session关键词去创建一个会话,即访问一个URL地址。

使用格式:

create session 会话名-可自定义 会话的地址即请求URL

示例:

create session apitest https://www.baidu.com/
#创建会话apitest,去访问百度地址

三、创建GET请求

格式:

创建会话

${响应结果变量} get request 请求会话名 /路径?参数名=值

示例:
create session apitest http://www.weather.com.cn
#创建会话
${response} get request apitest /data/cityinfo/101010100.html
#发送GET请求,101010100为城市编码,可使用参数化获取不同城市的天气信息

如果存在多个参数

create session apitest URL
#创建会话
${params} create dictionary 参数1=值1 参数2=值2
r e s p o n s e g e t r e q u e s t a p i t e s t P a t h p a r a m s = {response} get request apitest Path params= responsegetrequestapitestPathparams={params}
#发送GET请求,params关键字不能丢失

四、创建POST请求

格式:

创建会话

创建请求体

创建请求头

创建Post请求:${响应结果变量} post request 请求会话名 /路径 请求体data= 请求头headers=

示例:

create session apitest URL
#创建会话
${data} create dictionary 参数1=值1 参数2=值2
#请求体,以字典形式传入
${heads} create dictionary Content-Type= Cookie= Authorization=
#请求头内容
r e s p o n s e p o s t r e q u e s t a p i t e s t P a t h d a t a = {response} post request apitest Path data= responsepostrequestapitestPathdata={params} headers=${heads} #发送post请求,data、headers关键字不能缺失,无请求头的话可以不传headers

当然脚本也可以做很多优化

eg:将请求URL、传参、请求头等数据进行参数化,以此来提升自动化脚本的健壮性与可读性。

也可以添加对响应结果进行断言设置、转存变量并应用与其它接口等,这块内容后续再具体罗列哦。

学习安排上

如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

在这里插入图片描述

视频文档获取方式:

这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片进群即可自行领取

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

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

相关文章

JavaEE - JVM八股文(JVM内存区域划分,典型面试题,JVM类加载机制)

文章目录1. JVM运行时数据区(内存区域划分)2. JVM类加载机制常见面试题1. JVM运行时数据区(内存区域划分) JVM运行时数据区域也叫内存布局,但需要注意的时它和Java内存模型(JMM)不同&#xff0…

使用PyTorch进行知识蒸馏的代码示例

随着机器学习模型的复杂性和能力不断增加。提高大型复杂模型在小数据集性能的一种有效技术是知识蒸馏,它包括训练一个更小、更有效的模型来模仿一个更大的“教师”模型的行为。 在本文中,我们将探索知识蒸馏的概念,以及如何在PyTorch中实现它…

计算机毕设Python+Vue校园舆情监控系统(程序+LW+部署)

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

C#修改富文本框(RichTextBox)指定内容颜色

1.前言 最近给客户做了一个协议解包与组包的工具,以便于他们给终端客户或者集成商使用,让客户能够快速集成产品协议,降低客户集成工作量,产品协议是基于JT/T808,但是有增加了自己的一些特殊修改。 客户使用的是C#开发…

数据库原理及MySQL应用 | 并发控制

无论何时,只要有多个查询需要在同一时刻修改数据,都会产生并发控制问题,MySQL通过多版本并发控制和加锁实现并发控制。 多用户并发执行事务访问同一个数据库时,可能引发脏写、脏读、不可重复读、幻读等一致性问题。并发事务访问相同记录的情况&#xff0…

Golang 【basic_leaming】数组

阅读目录Array(数组)数组定义数组的初始化方法一方法二方法三数组的遍历数组是值类型多维数组二维数组的定义二维数组的遍历数组练习题1、请求出一个数组的和以及平均值 for-range2、请求出一个数组的最大值,并得到对应的下标3、从数组 [1, 3, 5, 7, 8] 中找出和为 …

探花交友_第10章_搭建后台系统(新版)

探花交友_第10章_搭建后台系统(新版) 文章目录探花交友_第10章_搭建后台系统(新版)1.1 概述1.2 API网关1.2.1 搭建网关依赖引导类跨域问题配置类配置文件测试1.2.2 配置鉴权管理器1.3 Nacos配置中心1.3.1 添加依赖1.3.2 添加boots…

33.数据统计

数据统计 后台系统首页中,显示各种统计数据,比如:累计用户数、新增用户数、登录次数等内容。 解决方案 数据库表分析 一、数据采集 需求: 1、探花系统将用户操作日志写入RabbitMQ 2、管理后台获取最新消息,构造日…

SpringBoot+微信小程序实现的云音乐小程序系统 附带详细运行指导视频

文章目录一、项目演示二、项目介绍三、项目运行截图四、主要代码一、项目演示 项目演示地址: 视频地址 二、项目介绍 项目描述:这是一个基于SpringBoot微信小程序框架开发的云音乐微信小程序系统。首先,这是一个前后端分离的项目&#xff…

C语言百日刷题第十五天

前言 今天是刷题第15天,放弃不难,但坚持一定很酷~ 再刷一套模拟题 C语言百日刷题第十五天前言一、选择题二、判断题三、多选题四、填空题五、分析程序题一、选择题 1.下列选项中,不属于开发一个C语言应用程序的具体实现步骤的是&#xf…

为什么网络应用程序是今年的主要攻击媒介之一

网络犯罪分子在绕过最新的网络应用程序防火墙方面的独创性正在将互联网应用程序变成今年增长最快的攻击媒介。面向公众的 Web 应用程序现在是渗透组织边界的最广泛使用的攻击媒介。 根据卡巴斯基全球应急响应团队最近的一份报告,始于 Web 应用程序的攻击从 2020 年…

ocker高级篇1-dockeran安装mysql主从复制

大家好,咱们前面通过十篇的文章介绍了docker的基础篇,从本篇开始,咱们的《docker学习系列》将要进入到高级篇阶段(基础篇大家可以查看之前发布的文章)。 咱们先来介绍:docker复杂方式安装软件。通过按照mysql\redis两个案例来讲解…

XC6SLX100-3FGG484C规格、XC7A15T-2CPG236I产品概述及应用

Spartan-6系列提供领先的系统集成能力,为大批量应用提供最低的总成本。这个由13个成员组成的家族扩展了逻辑单元的密度,从3840个扩展到147443个,功耗仅为之前斯巴达家族的一半,并且具有更快、更全面的连接。 Spartan-6系列基于成熟…

拯救动画卡顿之FLIP

前置知识 什么是FPS FPS是浏览器的每秒的渲染帧数,也就是浏览器切换画面的次数,大多数设备的刷新率都是60FPS,一般来说FPS越低页面就会越卡顿。 什么是像素管道? 像素管道是浏览器单个帧的渲染流水线,如果其中有某…

vue数据双向绑定

5.Vue数据双向绑定 5.1.什么是双向数据绑定 Vue.js 是一个 MVVM 框架,即数据双向绑定,即当数据发生变化的时候,视图也就发生变化,当视图发生变化的时候,数据也会跟着同步变化。这也算是 Vue.js 的精髓之处了。 值得…

[ MessAuto ]: 短信验证码自动填充,理论支持所有浏览器或 APP, Only For Mac

MessAuto 开源地址:https://github.com/LeeeSe/MessAuto MessAuto 是一款 macOS 平台 自动提取 短信验证码并 粘贴回车 的软件,百分百由Rust开发,适用于任何APP。 特点: 轻量:程序占用存储 1.8 M,占用内…

NLP学习笔记(三) GRU基本介绍

大家好,我是半虹,这篇文章来讲门控循环单元 (Gated Recurrent Unit, GRU) 文章行文思路如下: 首先通过长短期记忆网络引出为什么需要门控循环单元然后介绍门控循环单元的核心思想与运作方式最后通过简洁的代码深入理解门控循环单元的运作方…

奇舞周刊 476 期:代码在内存中的 “形状”

记得点击文章末尾的“ 阅读原文 ”查看哟~下面先一起看下本期周刊 摘要 吧~奇舞推荐■ ■ ■代码在内存中的 “形状”众所周知,js 的基本数据类型有 number、string、boolean、null、undefined 等。那么问题来了 typeof null 和 typeof undefined 分别是什么呢&…

[附源码]Node.js计算机毕业设计果蔬预约种植管理系统Express

项目运行 环境配置: Node.js最新版 Vscode Mysql5.7 HBuilderXNavicat11Vue。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分离等等。 环境需要 1.运行环境:最好是Nodejs最新版,我…

[内网渗透]—NTLM网络认证及NTLM-Relay攻击

NTML网络认证 Windows认证分为本地认证和网络认证,当我们开机登录用户账户时,就需要将lsass.exe进程转换的明文密码hash与 sam文件进行比对,这种方式即为——本地认证 而当我们访问同一局域网的一台主机上的SMB共享时,需要提供凭证通过验证才能访问,这个过程就会设计win…