robot framework 接口自动化之登录
网络不便,好久没更了,颓废好久,惭愧
目录
1、安装必须的库
2、固定格式介绍
3、完成一个登录
1、安装必须的库
requestsLibrary、requests安装
1、pip install requests
![]()
2、pip install robotframework-requests
![]()
2、固定格式介绍
第一步:创建一个项目,File->New Project,文件格式选择Directory


第二步:创建一个测试套件,文件格式选择File;然后导入库文件
选中项目,然后右键创建测试套件


导入库文件:
requests、和RequestsLibrary是前面装好的
Collections:是RobotFramework用来处理列表和字典的库
Builtin:should be之类的关键字
requests:提供了http所有的基本请求方式
RequestsLibrary:Create Session、Get Request、Post Request、To Json
Collections、Builtin、requests、RequestsLibrary为常用的库文件,其中Builtin是默认自带,不用导入。点击library,然后填写库的名称,保持即可完成添加,name没有显示成红色,则导入成功,否则有误


第三步:添加脚本
由于是请求接口,所以我们要与服务器建立连接,首先要使用Create Session关键字创建连接
Create Session XXX 服务器地址

然后再根据请求情况,传入header、body、url等

3、完成一次登录
登陆脚本如下,以下展示了2种json处理方式
![]()
Create Session api http://localhost:8090/jpress
${headers} Create Dictionary Content-Type=application/x-www-form-urlencoded
${data}= Create Dictionary username=root password=123456
${m}= Post Request api /admin/login headers=${headers} data=${data}
log ${m.json()['message']} //方法1
${m} To Json ${m.content} //方法2
${a} Get From Dictionary ${m} message
log ${a}
注意:
1、Project用Directory格式而不是File格式,是因为Directory是代表目录,可以继续添加下一层级目录或者File,但是File格式只能添加用例,不可以继续有下一个目录层级
2、添加下一目录层级可以在项目上右键->New Directory,文件格式选择Directory,添加完成后再添加测试套件,完成用例的添加
3、json格式的响应结果的提取可以用图上的2种方式,若是json有多层级,则继续用Get From Dictionary提取更深层级的内容:如m参数是data下一级

4、传header时,要用Create Dictionary赋值,而且后面的格式类型需要用“=”号连接;body可以用Set Variable传值,也可以用Create Dictionary,但是用Create Dictionary时,必须要用等于号赋值。二者传值最终如下:

5、https的请求,可以在Create Session时,在末尾加上verify=True,这样就不会出现警告

https://blog.csdn.net/weixin_43639512/article/details/86539774运行报错
robot framework 接口自动化之登录的更多相关文章
- robot framework UI自动化之登录
前面已写环境的搭建,接下来就可以直接进行UI自动化的编写工作了 目录 1.准备工作 2.了解定位 3.一个登录案例 1.准备工作 第一步:需要使用chrome浏览器来测试,因此首先要有一个驱动,下载好 ...
- Robot Framework 接口自动化介绍
接口测试的重要性大家应该都清楚,就不多说了,本文中主要介绍接口测试如何在robot framework自动化测试框架中进行. 一.环境依赖 1.安装robot framework环境,本文中不做讲解 ...
- Robot Framework接口自动化案例分享⑦——Jenkins持续集成
一.RobotFramework插件安装 1.Jenkins首页->系统管理->插件管理->可选插件-> 2.搜索robot,点击直接安装 二.任务参数配置 1.新建任务 Je ...
- python+robot framework接口自动化测试
python+requests实现接口的请求前篇已经介绍,还有不懂或者疑问的可以访问 python+request接口自动化框架 目前我们需要考虑的是如何实现关键字驱动实现接口自动化输出,通过关键字的 ...
- python+request+robot framework接口自动化测试
python+requests实现接口的请求前篇已经介绍,还有不懂或者疑问的可以访问 python+request接口自动化框架 目前我们需要考虑的是如何实现关键字驱动实现接口自动化输出,通过关键字的 ...
- python接口自动化10-token登录
前言 有些登录不是用cookie来验证的,是用token参数来判断是否登录. token传参有两种一种是放在请求头里,本质上是跟cookie是一样的,只是换个单词而已:另外一种是在url请求参数里,这 ...
- robot framework接口测试之二-四种常见的POST提交数据方式
写接口测试用例时,遇到以json格式提交数据时,报错,Request如下图: Response如下图: 改成form格式提交,可以正常运行,如下图: 代码如下: ------------------- ...
- python接口自动化10-token登录【转载】
本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/tag/python%E6%8E%A5%E5%8F%A3%E8%87%AA%E5%8A%A8%E ...
- robot framework 接口自动化测试和关键字开发
https://www.cnblogs.com/laoqing/p/10787593.html 1.实战-接口自动化测试实例 1.1 接口测试 接口测试通常是系统之间交互的接口,或者某个系统对外提供的 ...
随机推荐
- 使用 gitolite 管理配置 git 库的权限
问题:每次创建git库都需要在gitolite的配置文件中添加git库的配置信息,为了方便管理git库,不在重复提交,所以修改gitolite的配置管理文件. 环境:ubuntu16.04 安装git ...
- 2019.9.16:java课后测验
一.动手动脑 1. 枚举类型是引用类型, 枚举不属于原始数据类型,它的每个具体值都引用一个特定的对象.相同的值则引用同一个对象. 可以使用“==”和equals()方法直接比对枚举变量的值,换句话说, ...
- SQLServer Transaction Isolation Level
基本用法 -- Syntax for SQL Server and Azure SQL Database SET TRANSACTION ISOLATION LEVEL { READ UNCOMMIT ...
- [COGS 755]山海经:线段树
网上似乎这道题的题解很少?写一个吧 我跟这道题的渊源追溯到了上个学期刚刚学线段树的那一天... 当时线段树专题前边的题都是一些板子就不一会就水过了,然后就看到了最后一题的它:山海经 那一个上午,我竭尽 ...
- npm 安装时 --save --dev 和 --save 区别
一.模式 运行webpack命令时,一定要指定模式. webpack --mode developmentwebpack --mode production二.--save -dev --save:将 ...
- JAVA笔记14-线程
一.概念 线程:是一个程序里面不同的执行路径,每一个分支都叫线程.到现在为止我们所讲的程序分支只有一个,即main方法,称作主线程. 进程:class文件,exe文件.程序的执行过程:程序放入代码区( ...
- ORACLE复杂查询之子查询
子查询分为两类:标准子查询和相关子查询. 一.标准子查询:子查询先于主查询独立执行,返回明确结果供主查询使用. 子查询只执行一次,不依赖于主查询. 例如: 其中子查询能够返回结果:2450.所以断定其 ...
- 【javascript】生成二维码
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 < ...
- UML——用例视图
用例视图中交互功能部分被称为用例. 参与者 作为外部用户与系统发生交互作用,这是参与者的特征. 在系统的实际运作中,一个实际用户可能对应系统的多个参与者.不同的用户也可以只对应于一个参与者,从 ...
- Debian Buster升级后找不到声卡
昨天将Debian从Stretch升级到了新版巴斯光年(Buster).仍旧是先将source.list中的stretch替换为buster,再执行apt-get的update.upgrade.dis ...