Robotframework是一个利用关键字驱动实现自动化的框架,可以同时实现web、app、接口自动化测试。RF的使用类似于运行一个表格,测试人员往表格内填充文本,即可轻松实现自动化测试。

本文的目标

  • 利用RobotFramework实现接口自动化测试
  • 使用全局变量解决自动化测试过程中的“保持登录”问题。

知识点准备

“考前”划重点来了~为了避免让大家看到RobotFramework接口自动化脚本时出现一脸懵逼的情况~大家在阅读脚本之前可以先了解学习下以下几个知识点,为后续的接口自动化做基础铺垫。

  1. Jsonpath语法

Jsonpath是一种信息抽取类库,是从json文档中抽取出指定信息的工具;在robotframework里面的使用场景是提取响应结果的某个参数值。

Jsonpath在线校验工具:http://jsonpath.com/

  1. Python的split()函数用法

主要用于截取切片一段字符串,从中获取token值

  1. Robotframework

Tips:掌握RF关键字的使用,即可独立写一个简单的接口自动化脚本

  1. 设置全局变量Set Global Variable设置全局变量:用于存放token(cookies),以便于其他接口调用
  2. 创建字典Create dictionary:以字典形式存放接口的请求头(headers)、报文(data)数据
  3. 创建用户关键字New user keyword:主要用于封装登录模块的脚本
  4. Create session创建会话:接口自动化关键字,定义域名别名
  5. Post/Get request发起请求:接口自动化关键字,组合参数发起接口请求
  6. Run keyword if:断言

Tips:以上关键字的使用方法,可通过Tools-search keywords来查看,如下图:

环境准备

已手动安装python、robotframework、RequestsLibrary库

脚本中需要使用到的library:

接口分析

1.成功登陆到具体系统界面,需要用到以下2个请求

2.进入到对应的子系统所需的token

3.子系统所需要的TOKEN

在子系统请求的response->headers内的set-cookie

(Tips:若不知道开发使用的是哪个字段来保持登录连接,可向对应的开发咨询即可)

自动化脚本

Tips:RF的RIDE的使用不再多说,大家可网上自行搜索教程

本文接口自动化全局设计思路如下:

一、创建用户关键字(New user keyword)

1.操作路径:在suite文件上右键选择New user keyword

2.脚本目标:

封装登录模块脚本(本文案例登录包含2个接口请求)

3.脚本正文:

二、测试用例(testcase)

接口:获取子系统的某个数据列表

脚本正文:

(Tips:脚本设计过程都一样:请求头、报文、发起请求、断言)

三、运行结果

【实战】RobotFramework接口自动化-全局变量解决保持登录问题相关推荐

  1. python接口自动化4-绕过验证码登录(cookie)

    前言 有些登录的接口会有验证码:短信验证码,图形验证码等,这种登录的话验证码参数可以从后台获取的(或者查数据库最直接). 获取不到也没关系,可以通过添加cookie的方式绕过验证码. 一.抓登录coo ...

  2. python接口测试框架与自动化实战_Python接口自动化从设计到开发,测试框架实战与自动化进阶视频课程...

    Python接口自动化从设计到开发,测试框架实战与自动化进阶视频课程21套高级软件测试,性能测试,功能测试,自动化测试,接口测试,移动端测试,手机测试,WEB测试,渗透测试,测试用例设计,黑盒测试,白 ...

  3. Python接口自动化 提示身份未登录问题解决 (二)

    上次我们通过登录获取cookies的方式来解决身份未登录的问题,本期我们通过session的方式,原理为,通过创建session对象并进行一次登录,下次在登陆其他需要登录才能访问的页面时,通过sess ...

  4. python绕过验证码登录_python接口自动化(十三)--cookie绕过验证码登录(详解)...

    简介 有些登录的接口会有验证码:短信验证码,图形验证码等,这种登录的话验证码参数可以从后台获取的(或者查数据库最直接).获取不到也没关系,可以通过添加cookie的方式绕过验证码.(注意:并不是所有的 ...

  5. python调用文件下载接口_python接口自动化21-下载excel文件(Content-Type:octets/stream)...

    前言 Content-Type类型为octets/stream,这种一般是文件类型了,比如有时候需要导出excel数据,下载excel这种场景如何用python来实现呢? 抓下载接口 1.下载的场景如 ...

  6. python接口自动化-参数化

    原文地址https://www.cnblogs.com/yoyoketang/p/6891710.html python接口自动化 -参数关联(一)https://www.cnblogs.com/11 ...

  7. python接口自动化参数化_python接口自动化-参数化

    原文地址https://www.cnblogs.com/yoyoketang/p/6891710.html python接口自动化 -参数关联(一)https://www.cnblogs.com/11 ...

  8. Interface接口自动化登录图文验证码问题的解决办法

    简介:我这段时间新进了一家医疗公司,为了测试的质量和效率能提升,我们需要做接口自动化测试,碰到的第一个拦路虎就是登录时的验证码,本来我是叫开发帮忙在测试环境去掉,线上环境再加上,但是开发觉得麻烦,说为 ...

  9. Python UnitTest接口自动化实战

    目录 一.需注意事项 二.单元测试框架unittest 2.1 作用 2.2 测试用例(TestCase) 2.2.1 单元测试函数 2.2.2 测试函数的执行顺序 2.3 用例收集器(TestLoa ...

最新文章

  1. 零基础入门学习Python(19)-内嵌函数和闭包
  2. AWS 和 NVIDIA 实现 Mask R-CNN 和 T5-3B 最快训练时间 | AI 日报
  3. 「技术综述」如何降低遮挡对人脸识别的影响
  4. 注册不上zookeeper无报错_Zookeeper 跨区高可用方案
  5. Ocrad.js – JS 实现 OCR 光学字符识别
  6. 关系的三类完整性约束
  7. 怎么安装64位JAVA,大师来详解
  8. 保护您的眼睛:电脑背景色设置(XP WIN 7)
  9. QTreeWidget 设置图片以及图片大小
  10. XR迈向10亿级必须解决的3个问题
  11. Oracle 序列使用整理
  12. [Win32]路径操作API函数
  13. latex-多个表格引用
  14. StreamWiki: Enabling Viewers of Knowledge SharingLive Streams to Collaboratively Generate Archival
  15. 【JavaSE】类和对象
  16. Kindle支持文档类型
  17. PMP系列 - 关键链法
  18. 设备配网专题《原理分析,设备配网技术之AP配网》
  19. Nature子刊 | 全球变化因子对土壤微生物多样性和功能的影响
  20. 查找字符串中某个字符出现的次数

热门文章

  1. 实习手册一(Python基于Tornado框架的接口响应服务)软件下载与环境配置
  2. css表单字体问题,CSS字体设置的几个问题?
  3. 5g网站服务器宽带,5g服务器优势特点详解
  4. 关于refs/for/ 和refs/heads/
  5. Django - ORM字段和字段参数
  6. Android 指纹识别
  7. 企业机密保护需要邮件监控软件
  8. 微信JSSDK分享接口中wx.config 出现invalid signature问题的解决办法
  9. 软件工程餐馆点菜之需求分析
  10. 数字电视机顶盒行业调研报告 - 市场现状分析与发展前景预测