【三】Jmeter接口自动化测试系列之Http接口自动化实战
作者:大虫
本文介绍 Jmeter 工具的 http 接口 自动化测试 实战!
为了通用性,就拿知乎 网站作为实战例子吧!
必备技能:http接口基础知识、抓包,本文不做详细介绍,不会的可以先百度恶补!
首先,我们把 知乎登录的包抓下来:
我们抓一下 获取

Jmeter 对应脚本如下:

获取发现栏目脚本:

使用正则表达提取器,提取栏目内容(what?不会正则表达式?找百度)

使用 foreach 控制器将提取结果合并到一个字符串


打印结果:

运行结果:

在进行http 接口测试的时候,通常需要注意一下几点:
- cookie的处理,正常流程,可以用 HTTP Cookie 管理器 管理器操作!
- 特殊流程,如果需要自定义cookie ,可以通过 HTTP信息头管理器 里面添加cookie 字段来处理!
- Content-Type 非常重要,如果调用接口报错,排查其他没有问题的情况下,十有八九就是这个Content-Type 格式不对造成的!
- 在进行性能测试时,http接口的超时时间一定要设置一个默认值,不然在Jmeter进行分布式测试时,远程server端经常无法关闭,需要手动重启,当时为了这个还写了一个远程重启Jmeter server 的软件,糗大了!
- 利用Jmeter 进行接口自动化测试时,可以利用Beanshell 处理数据、业务规则校验,使用Jdbc 请求 和 正则表达式来提取数据库数据和网页数据,从而进行自动化流程和数据核对!
- 更高级的方法,可以将Jmeter 布置到 服务器上,然后通过Jenkins 来进行调用,还可以自己写一些文件插件(Excel ),生成比对结果!
示例脚本下载地址:http://files.cnblogs.com/files/artoftest/3.zip
下一篇我们介绍 结合 http请求、beanshell、jdbc请求、正则表达式提取器,来实现自动化数据流程和数据核对,感兴趣的朋友可以关注,谢谢!
【三】Jmeter接口自动化测试系列之Http接口自动化实战的更多相关文章
- 【二】Jmeter接口自动化测试系列之函数使用及扩展
上一篇文章我们了解了Jmeter的参数化的集中方法,虽然方法不是很多,但已经足够使用! 本篇文章,介绍一下Jmeter自带函数的使用和 函数扩展,来满足测试工作中的各种需求! Jmeter自带函数 点 ...
- 【一】Jmeter接口自动化测试系列之参数化方法
Jmeter作为虽然作为一款和LoadRunner相媲美的性能测试工具,但参数化功能实在不咋地,这里我大概总结了一下Jmeter的参数化方法! 至于参数化的用途,我这里就不多说了,做测试的都明白吧!本 ...
- Jmeter接口自动化测试系列之函数使用及扩展
介绍一下Jmeter自带函数的使用和 函数扩展,来满足测试工作中的各种需求! Jmeter自带函数 点击函数帮助助手图标,弹出函数助手框,可以选择各种各样的函数 举例: _Random 获取随机数,可 ...
- 接口自动化测试持续集成--Soapui接口功能测试参数化
按照自动化测试分层实现的原理,每一层的脚本实现都要进行参数化,自动化的目标就是要实现脚本代码与测试数据分离. 当测试数据进行调整的时候不会对脚本的实现带来震荡,从而提高脚本的稳定性与灵活度,降低脚本的 ...
- 接口自动化测试持续集成--Soapui接口功能测试断言
断言也就是判断实际结果与预期结果是否相等,如果相等测试通过,否则测试失败,自动化测试不管是UI,Services还有unit都需要做断言. 一.添加断言步骤的组件 二.设置断言 设置常用断言的三种方式 ...
- 接口自动化测试持续集成--Soapui接口功能测试持续集成
Soapui接口功能测试持续集成,需要先安装好maven和jenkins,maven和jenkins安装和系统环境配置比较简单,在这里不做叙述. 1.Soapui保存的工程文件 soapui工程保 ...
- 接口自动化测试持续集成--Soapui接口功能测试数据传递
做接口测试经常会遇到如下两种情况需要处理数据传递 接口间的数据依赖,A接口请求的参数需要用到B接口的返回值 接口请求通常要用到鉴权的接口获取Token,Token通常会跟其他接口构成一对多的关系,这种 ...
- 自动化测试系列:Selenium UI自动化解决iframe定位问题
更多原创测试技术文章同步更新到微信公众号 :三国测,敬请扫码关注个人的微信号,感谢! 原文链接:http://www.cnblogs.com/zishi/p/6735116.html 一个阴雨霏霏 ...
- Appium python自动化测试系列之滑动函数封装实战(八)
8.1 什么是函数的封装 教科书上函数的封装太官方,我们这里暂且将函数的封装就是为了偷懒把一些有共性的功能或者一些经常用的功能以及模块放在一起,方便我们以后再其他地方调用.这个只是个人的理解所以大家懂 ...
随机推荐
- Nginx网络架构实战学习笔记(五):大访问量优化整体思路、ab压力测试及nginx性能统计模块、nginx单机1w并发优化
文章目录 大访问量优化整体思路 ab压力测试及nginx性能统计模块 ab压力测试及nginx性能统计模块 ab压力测试 nginx性能统计模块 nginx单机1w并发优化 整装待发: socket ...
- s-cms学校建站重装漏洞
文件位置 ./install/index.php 影响版本 PHP V5.0 过程 通过获取GET请求判断是安装还是结束安装 安装步骤1 安装步骤2 安装步骤3 安装步骤4 解释 安装步骤1-3都没有 ...
- Haproxy+Percona-XtraDB-Cluster 集群
Haproxy介绍 Haproxy 是一款提供高可用性.负载均衡以及基于TCP(第四层)和HTTP(第七层)应用的代理软件,支持虚拟主机,它是免费.快速并且可靠的一种解决方案. HAProxy特别适用 ...
- 力扣算法题—148sort-list
Sort a linked list in O(n log n) time using constant space complexity. Example 1: Input: 4->2-> ...
- Springboot+mybatis+dbcp+mysql简单集成
1.添加依赖 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>m ...
- 一道面试题:js返回函数, 函数名后带多个括号的用法及join()的注意事项
博客搬迁,给你带来的不便,敬请谅解! http://www.suanliutudousi.com/2017/11/13/js%E8%BF%94%E5%9B%9E%E5%87%BD%E6%95%B0%E ...
- 【题解】sweet
题目描述 为了防止糖果被小猫偷吃,John把他的糖果放在了很多的高台上,一个高台可以认为是一段平行于X轴的线段,并且高台的y坐标都是大于0的,每个高台都有左端点和高台的长度,每个高台都有糖果.所有的高 ...
- LeetCode Array Easy 167. Two Sum II - Input array is sorted
Description Given an array of integers that is already sorted in ascending order, find two numbers s ...
- 微信小程序のwxss选择器
一.什么是选择器 选择器就是选择标签所用样式的模式,即:以什么方式设置样式. 二.微信小程序的样式选择器 .calss就是选择器的一种 三.选择器的优先级 element表示样式元素:.element ...
- 2018-2-13-安装-aria2
title author date CreateTime categories 安装 aria2 lindexi 2018-2-13 17:23:3 +0800 2018-2-13 17:23:3 + ...