rf接口自动化之结果校验
接口自动化的结果校验分两个层次:协议层,业务层
(本篇仅对协议层校验做扩展,仅考虑返回结果为json格式的接口)
协议层校验即对返回结果的key是否存在,value类型是否与协议一致进行判断
class CheckResp():def check_keys(self,target,template,except_key=""):if isinstance(target,(str,unicode)):target = json.loads(target)if isinstance(template,(str,unicode)):template = json.loads(template)for key,value in template.items():if not target.has_key(key) and key not in except_key: # 校验断言json的key在返回结果中的是否存在raise Exception("key:%s not in the response" % key)elif target.has_key(key) and type(value) != type(target[key]): # 校验返回结果的value类型与断言json的value类型一致raise Exception("the value's type of key:%s not match the assert json" % key)if isinstance(value,dict): # 多重嵌套的字典类型递归校验判断self.check_keys(target[key],value)
在robot framework中的应用:
- 引用代码库
- 在接口调用请求后,获取返回结果,赋值给${resp}
- 接口返回结果协议层校验关键字使用:Check Keys ${resp} {"a":1,"b":{"c":"d"}}
转载于:https://www.cnblogs.com/hito/p/11050170.html
rf接口自动化之结果校验相关推荐
- 太全面了!RF接口自动化框架项目实战
以码同学VIP课程中的微服务项目进行接口自动化实战 01 搭建项目结构 创建一个项目,名字自己起,课上叫微服务项目接口测试框架,初始项目结构如下,不要着急对着图去创建,看下方解释再创建 配置:这是一个 ...
- 接口自动化之操作mysql数据库
接口自动化之操作mysql数据库 在接口自动化测试过程中并不像UI自动化测试一样存在界面可以通过界面数据校验正确性,除了可以通过接口返回的数据校验还可以通过操作数据库校验数据,那么我们该如何做接口自动 ...
- 【实战】RobotFramework接口自动化-全局变量解决保持登录问题
Robotframework是一个利用关键字驱动实现自动化的框架,可以同时实现web.app.接口自动化测试.RF的使用类似于运行一个表格,测试人员往表格内填充文本,即可轻松实现自动化测试. 本文的目 ...
- 浅谈python+requests实现接口自动化
前言 今年2月调去支持项目接口测试,测试过程中使用过postman.jmeter工具,基本能满足使用,但是部分情况下使用较为麻烦. 比如:部分字段存在唯一性校验或字段间有业务性校验,每次请求均需手工修 ...
- python api开发用什么框架_python+requests接口自动化框架
为什么要做接口自动化框架 1.业务与配置的分离 2.数据与程序的分离:数据的变更不影响程序 3.有日志功能,实现无人值守 4.自动发送测试报告 5.不懂编程的测试人员也可以进行测试 正常接口测试的流程 ...
- 后端接口重定向_接口自动化面试题,建议收藏!
1.get和post的区别? l http是上层请求协议,主要定义了服务端和客户端的交互规格,底层都是tcp/ip协议 l Get会把参数附在url之后,用?分割,&连接不同参数,Get获取资 ...
- java接口自动化Excel占位符_基于maven+java+TestNG+httpclient+poi+jsonpath+ExtentReport的接口自动化测试框架...
接口自动化框架 项目说明 本框架是一套基于maven+java+TestNG+httpclient+poi+jsonpath+ExtentReport而设计的数据驱动接口自动化测试框架,TestNG ...
- python做接口自动化测试仪器经销商_Python接口自动化测试的实现
接口测试的方式有很多,比如可以用工具(jmeter,postman)之类,也可以自己写代码进行接口测试,工具的使用相对来说都比较简单,重点是要搞清楚项目接口的协议是什么,然后有针对性的进行选择,甚至当 ...
- 编写jmeter测试用例_Jmeter | 实现接口自动化设计说明
一.变量定义规则 1.全局变量:各个项目组负责人负责统一规划本项目的全局变量.用"配置元件"中的[用户定义变量]来设置,并置顶在所有线程组的最前方: 2.HTTP消息头:各个项目组 ...
- 录制完脚本怎么做接口自动化测试_快速构建轻量级接口自动化框架
随着移动互联网和微服务的迅速发展,大部分企业都采用接口的方式实现客户端和服务端的交互,传统的PC端也逐渐趋向于前后端分离架构.为了应对此种架构下的业务迭代,很多QA团队开始推广接口自动化,甚至是自研接 ...
最新文章
- SAP IQ09 可以批量查询序列号数据
- 查看tcp各个连接状态的数量
- 韶音耳机连不上电脑_运动耳机什么牌子音质好,运动耳机品牌排行榜
- 无插件HTML,HTML5+CSS3实现无插件拖拽上传图片(支持预览与批量)分享!
- suse linux 11如何分区,新手发帖,关于SUSE11挂载磁盘阵列并分区的问题
- 美橙互联域名与其他地方的区别
- updatedb命令
- 货币转换python代码_[Python3 练习] 003 货币转换
- 计算机科学创新大赛,“互联网+”大学生创新创业大赛
- matlab中欠定方程组超定方程组_大规模线性方程组解法简介
- 学习网站及工具地址汇总
- 为PXI硬件选择合适的设备驱动程序–VISA还是IVI?
- Android学习笔记(十):jsonArray转array
- EPC 的RFID 标准体系
- 弧齿锥齿轮零件图_弧齿锥齿轮画法类别
- nginx根据项目名实现内网地址转发
- vue项目怎么样去实现新窗口跳转_vue跳转方式(打开新页面)及传参操作示例
- pycharm 字体颜色更改
- 这应该是我见过最好的机房监控解决方案了!
- VPO微珀宣布完成千万人民币Pre-A融资,专注电子烟场景化消费市场
热门文章
- 【openGauss】gsql客户端工具(二)gsql客户端工具之Data Studio客户端工具
- Java生成32位全局唯一id
- 项目管理——N个模板
- java发微信字体颜色,微信公众号 模板消息 字体颜色 错位?
- 获取Adobe Flash 及Reader安装包
- IAR教程之IAR安装
- ArcMap怎么导出shape文件到奥维互动地图
- Python入门:使用turtle库 绘制时钟(经典画表)
- 3dmax2020渲染器下载3dmax2020渲染器VRay4.2下载安装教程
- 数学建模优化模型简单例题_10次数学建模积累下的经验,希望能对你有所帮助!...