软件质量保障 专注测试圈,自动化测试、测试平台开发、测试新技术、大厂测试岗面经分享, 可以帮忙内推BATJ等大厂!
今天给大家介绍利用JMeter录制手机APP和PC端web HTTP请求做接口性能测试的方法,文章有点长,希望对大家的工作有一定的帮助。
一、JMeter录制手机APP HTTP请求
1.PC端配置:启动JMeter,测试计划>Threads>线程组,添加一个线程组(APP性能测试)
2.添加监听器>查看结果树;
配置如下:
3.点击保存完成PC端配置;
接下来配置手机端
1.导入数字证书,点击启动,获取Apache生成的CA证书(位置位于Apache JMeter bin目录下,有效期7天,七天后需重新获取);
将此文件发送至手机,安装证书即可(非常重要);
2.手机设置代理(Android版)
1)获取本地IP;命令提示符(或者Windows PowerShell)> ipconfig
2) 进入手机WIFI设置,选择一个WIFI,长按WIFI名称,在弹出的提示框中,选择“修改网络”。
3)修改网络页,勾选【显示高级选项】,填写代理服务器主机名(JMeter软件所在的主机IP地址)和代理服务器端口(添加HTTP代理服务器配置的端口,默认8888),保存配置。
二、录制脚本
1.启动代理服务器;
2.操作需要录制HTTP请求的APP
3.查看自动生成的脚本
4.此处由于没有设置接口过滤规则,所以手机端操作相应的所有请求都会加载过来;可以整理一下需要的脚本;
三、JMeter录制web端HTTP请求
1.Win10谷歌浏览器导入证书设置>高级>隐私设置和安全性>
2.浏览器设置代理
3.MAC Chrome导入证书,并设置代理
4.启动代理,打开浏览器,输入要录制脚本的URL进行访问,录取脚本;
四、做性能测试
1.配置线程组
线程组主要包含三个参数:线程数、准备时长、循环次数。
- 线程数:虚拟用户数。一个虚拟用户占用一个进程或线程。设置多少虚拟用户数在这里也就是设置多少个线程数。
- 准备时长:设置的虚拟用户数需要多长时间全部启动。如果线程数为20,准备时长为10,那么需要10秒钟启动20个线程。也就是每秒钟启动2个线程。
- 循环次数:每个线程发送请求的次数。如果线程数为20,循环次数为100,那么每个线程发送100次请求。总请求数为20*100=2000。如果勾选了“永远”,那么所有线程会一直发送请求,一到选择停止运行脚本。
2.添加监听器
脚本的主要部分设置完成后,需要通过某种方式获得性能测试中的测试结果,在本例中,我们关心的是请求的响应时间。
JMeter使用监听器元件收集取样器记录的数据并以可视化的方式来呈现。
3.添加聚合报告
右键点击线程组,在弹的菜单(添加--->监听器--->聚合报告)中选择聚合报告。
4.运行脚本,生成聚合报告
CA证书有什么用?
CA:Certificate Authority的缩写,也叫“证书授权中心”。它是负责管理和签发证书的第三方机构。一般来说,CA必须是所有行业和所有公众都信任的、认可的。因此它必须具有足够的权威性。CA证书就是权威机构颁发的证书。在本文中,CA证书就是手机与JMeter之间的相互认可的一个信用凭证。