惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
腾讯CDC
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
L
LINUX DO - 热门话题
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Project Zero
Project Zero
V
Vulnerabilities – Threatpost
Cisco Talos Blog
Cisco Talos Blog
P
Palo Alto Networks Blog
C
Cisco Blogs
A
Arctic Wolf
月光博客
月光博客
The GitHub Blog
The GitHub Blog
T
The Blog of Author Tim Ferriss
量子位
小众软件
小众软件
Latest news
Latest news
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Microsoft Security Blog
Microsoft Security Blog
T
The Exploit Database - CXSecurity.com
Security Latest
Security Latest
N
Netflix TechBlog - Medium
K
Kaspersky official blog
人人都是产品经理
人人都是产品经理
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
博客园_首页
Y
Y Combinator Blog
P
Proofpoint News Feed
H
Hackread – Cybersecurity News, Data Breaches, AI and More
M
MIT News - Artificial intelligence
T
Threat Research - Cisco Blogs
S
Schneier on Security
D
Docker
Scott Helme
Scott Helme
MyScale Blog
MyScale Blog
Spread Privacy
Spread Privacy
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
GbyAI
GbyAI
有赞技术团队
有赞技术团队
Google DeepMind News
Google DeepMind News
The Hacker News
The Hacker News
H
Help Net Security
Simon Willison's Weblog
Simon Willison's Weblog
J
Java Code Geeks
C
Cyber Attacks, Cyber Crime and Cyber Security
T
Tenable Blog
B
Blog
Know Your Adversary
Know Your Adversary
IT之家
IT之家

博客园 - 松山居士

部署Hermes-Agent和SenseNova-Skills ubuntu用root账户启动服务指定脚本 WSL迁移OpenEuler虚拟机 采用Ollama本地布署DeepSeekCoderV2 Loongnix Server 23.2安装Docker及常用镜像 Ollama导出和导入DeepSeek预训练大模型 Win10上模拟LoongArch虚拟机安装Deepin系统 查看exe启动命令和参数 Visual Studio C++设置EXE和DLL在不同路径 PG数据库常用DDL VSCode+XMake开发环境搭建备忘 C++库管理Conan使用备忘 Python多版本管理Anaconda备忘 Win10上模拟LoongArch虚拟机并搭建Qt5开发环境 解决向日葵无人值守自启动的权限问题 强制去掉Qt的运行环境信息 QGIS插件开发备忘 Linux shell 实用命令备忘 WIN10配置FX DocuCentre-IV C2260 PCL6打印机 VMWare虚拟磁盘整理与收缩 解决启用C++17后byte重定义的问题(byte ambiguous ) 解决Deepin安装Flatpak程序时不能创建临时文件的错误
JMeter做WEB和API自动化测试
松山居士 · 2024-04-23 · via 博客园 - 松山居士

一、软件安装

1、下载安装OpenJDK,只要是大于等于8的版本就可以: 下载地址

2、下载安装JMeter,绿色包解压及可用,需要将bin目录加入到环境变量Path中:下载地址

二、Web测试用例录制

1、创建工作目录,启动JMeter。

mkdir -p E:\code\JMeter-AutoTest
cd E:\code\JMeter-AutoTest
jmeter

 

 2、选择文件->模板。

3、选择Recording。默认启用的是8888端口。

 4、设置网站地址,记录文件和网站协议。

 

   5、点击左侧HTTP(S) Test Script Recorder,右侧点击启动,开始监听并记录。

 

6、浏览器安装代理插件,有类似插件的跳过此步骤。

 7、设置代理服务器,启用代理。

 

8、在浏览器中打开待测试网站,登录并点击特定功能。JMeter会录制所有操作,录制完成后,点击左侧HTTP(S) Test Script Recorder,点击停止记录。

  9、展开Recording Controller,树中记录的是各个请求,删除不需要的,将有用的请求重命名。

  10、 点击保存按钮保存jmx文件到E:/code/JMeter-AutoTest/RecordingController.jmx文件中。注意:JMX文件名不要用空格,命令行需要。

 11、启动自动化测试。注:录制用例用GUI界面,测试用命令行。

jmeter -n -t RecordingController.jmx -j jmeter.log -l result.csv -o report -e

12、查看测试报告。打开index.html。

Web录制测试用例采用以上的方法即可。针对Restful风格的API接口进行测试,可看第三小节。

 三、测试API用例。

1、点击User Defined Variables,新增token变量。

2、在 用户登录的取样器中添加后置处理器JSON提取器。

 3、将登录成功后。通过swagger文档中的返回的JSON格式 ,将.data.tokenString的值赋给token变量。

4、在登录页添加HTTP请求的取样器,命名为用户信息获取。

 5、在用户信息获取取样器中,跟据swagger文档中的接口说明,填写接口为/sxql/sys/user/info,接口方式为GET,新增参数为userId,值为1。

6、在用户信息获取取样器中,将token信息添加到HTTP信息头管理器中,方式是新增Authorization,值为${token}。这样新增的用户信息获取取样器就配置好了。其它接口只需要复制它,修改接口和参数即可。

7、保存后关闭JMeter,采用命令行方式启动测试。

jmeter -n -t RecordingController.jmx -j jmeter.log -l result.csv -o report -e

8、查看JMeter报告,打开report目录下的index.html。