dapi 基于Django的轻量级测试平台三 接口关联
QQ群:
GitHub:https://github.com/yjlch1016/dapi
一、接口关联思路:
在接口测试中,
很多场景下,
上一个接口的出参要作为下一个接口的入参,
即上一个接口的响应结果中的值要作为下一个接口的请求数据,
在JMeter里面,
这叫做关联。
看了网上的开源项目,
有的花了很大篇幅介绍测试报告等,
但是那些都是辅助模块,
不是重点,
接口测试的重点是怎么组织测试用例(基本流、备选流),
没有讲清楚怎么做接口关联。
有些是把需要传参的接口先执行一遍,
然后再传递给后面的接口,
这样做会造成接口重复执行,
不算是很友好的解决方案。
之前我的想法是单独再建一张一对多的表,
用于存放提取的数据,
但是那样做会造成数据的冗余。
现在的做法是先re.findall(正则表达式模板, 某个接口的实际结果)提取出来,
作为全局变量,
然后再replace(old, new)把正则表达式提取的值替换进去。
二、页面配置:
1、在需要向后传参的接口里面开启正则表达式提取器(默认不开启),
输入变量名(随便取),
输入正则表达式((.+?)表示匹配小括号里面的数据,小括号左右都不为空或者空格);
2、在需要动态入参的接口里面输入${变量名},这跟JMeter里面的设置方法是一样样儿的。
三、查看传参是否成功:
可以看到响应代码与实际结果都是对的,说明这个参数的值传递成功了!
dapi 基于Django的轻量级测试平台三 接口关联的更多相关文章
- dapi 基于Django的轻量级测试平台一 设计思想
GitHub:https://github.com/yjlch1016/dapi 一.项目命名: dapi:即Django+API测试的缩写 二.设计思想: 模拟性能测试工具JMeter的思路, 实现 ...
- dapi 基于Django的轻量级测试平台七 怎样部署到生产环境
QQ群: GitHub:https://github.com/yjlch1016/dapi Nginx+uWSGI 前置条件:以下所有操作均在root账号下面进行如果不是root用户请注意权限问题因为 ...
- dapi 基于Django的轻量级测试平台八 Docker部署
QQ群: GitHub:https://github.com/yjlch1016/dapi 采用Docker+Supervisor+Nginx+uWSGI+Django 一.Dockerfile文件: ...
- dapi 基于Django的轻量级测试平台六 怎样使用压测功能
QQ群: GitHub:https://github.com/yjlch1016/dapi JMeter非GUI模式下: jmeter -n -t jmx脚本 -l jtl文件 -e -o 测试报告目 ...
- dapi 基于Django的轻量级测试平台四 任务设置
QQ群: GitHub:https://github.com/yjlch1016/dapi 一.间隔时间: 二.定时时间: 三.任务设置: 四.任务结果:
- dapi 基于Django的轻量级测试平台二 前端页面
QQ群: GitHub:https://github.com/yjlch1016/dapi 一.登录页login.html: 二.首页home.html: 三.产品线列表页product.html: ...
- dapi 基于Django的轻量级测试平台五 测试报告
QQ群: GitHub:https://github.com/yjlch1016/dapi 一.柱状图 二.饼状图
- dmock 基于Django的轻量级Mock平台
GitHub:https://github.com/yjlch1016/dmock # dmock 基于Django的轻量级Mock平台 dmock即Django+Mock的缩写 一.思路: mock ...
- [2018-03-06] 基于Django的轻量级CMS Mezzanine搭建笔记
一丶什么是Mezzanine? 它是基于django的内容管理平台(),组成简单,可扩展性和定制性强,特别是个小型的个人博客系统.它也提供了类似wordpress的管理页面.博客发布.图片展示等功能, ...
随机推荐
- vijos2051 SDOI2019 快速查询
题目链接 吐槽 竟然让\(nlog\)的做法卡过去了.. 思路 因为\(1 \le q \le 10^5\),所以可以先对每个标准操作,所操作的位置进行重标号.这样所有的下标都是在\(10^5\)以内 ...
- JOI2013-2019题解
JOI2013-2019题解 Link
- [LeetCode] 901. Online Stock Span 股票价格跨度
Write a class StockSpanner which collects daily price quotes for some stock, and returns the span of ...
- org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jpaMappingContext之解决办法
错误产生背景:将之前用Eclipse写的Blog项目迁移到Idea上面.Ecilpse项目一直是没有问题的. 错误原因分析:原因是项目依赖中引入的jpa,另外也与Idea比较智能也有关系 解决办法: ...
- 在 Queue 中 poll()和 remove()有什么区别?
remove() ,如果队列为空的时候,则会抛出异常 而poll()只会返回null
- 外文投稿时应该如何填写有关Social Media的问题?
外文投稿时应该如何填写有关Social Media的问题? 1 *Please supply our social media editor with a "tweet" or s ...
- 用欧拉计划学Rust编程(第26题)
最近想学习Libra数字货币的MOVE语言,发现它是用Rust编写的,所以先补一下Rust的基础知识.学习了一段时间,发现Rust的学习曲线非常陡峭,不过仍有快速入门的办法. 学习任何一项技能最怕没有 ...
- kafka的安装和初步使用
简介 最近开发的项目中,kafka用的比较多,为了方便梳理,从今天起准备记录一些关于kafka的文章,首先,当然是如何安装kafka了. Apache Kafka是分布式发布-订阅消息系统. Apac ...
- gogs私有代码库上传项目
https://blog.csdn.net/zhouxueli32/article/details/80538017 一.上传 在cmd命令里进入该项目 然后依次输入以下命令 git initgit ...
- 【07】Kubernets:资源清单(控制器 - DaemonSet)
写在前面的话 前面讲解了 Pod / ReplicaSet / Deployment 的资源清单,我们这里谈一下 DaemonSet 的资源清单. 之前说过,DaemonSet 控制器能够保证资源在每 ...