第1节 jmeter介绍

Apache公司研发的一款测试工具,开源免费(免费是重点)、支持多协议、轻量级、功能强大,可以设置中文,界面就偷点懒不介绍了;一般用来做负载、接口测试、性能测试、压力测试、数据库测试、Java程序测试。

测试概念:
负载测试: 这类测试使系统或者应用程序在预先设计好的极端场景下测试运行。这类测试用来评估系统或者程序在极端条件下的行为。
性能测试: 这种测试被用来检测系统的性能表现,包括特定情况下,系统的响应能力和稳定性。
压力测试: 这类测试通过载入更多的外部资源,并使系统组件超越其所设定的能力范围,试图使系统挂掉


第2节 JMeter安装

在安装jmeter之前首先配置好java环境,jmeter下载地址:http://jmeter.apache.org/download_jmeter.cgi,Windows版本下载.zip格式文件,Linux版本下载.tgz格式文件。

JAVA环境:JDK1.8以上,安装详情链接


第3节 JMeter目录介绍

BIN目录
examples 目录中有CSV样例
jmeter.bat Windows启动文件
jmeter.log jmeter运行日志文件
jmeter.sh Linux启动文件
jmeter.propoerties 系统配置文件
jmeter-server.bat Windows分布式测试要用到的服务器配置
jmeter-server Linux分布式测试要用到的服务器配置

第4节 JMeter参数化

流程:
1.找出需要做参数化的数据
2.准备提供给参数化需要的数据
3.把脚本里面的常量—-变量(使用前面的数据源数据)

参数化方式:

CSV需要配置的元件
步骤1:设置csv参数(分隔符号使用英文格式)
设置参数1.jpg

步骤2:设置JMeter-CSV文件
1.文件路径:准备的数据的路劲
2.文件编码:utf-8默认
3.变量名称:根据测试所准备的参数变量名称来填写
4.是否忽略第一行的值:根据自己准备的文件来设置(数据文件首行填写了变量名称则选择true,否则false)截图未命名.jpg

步骤3:设置参数变量:使用英文字符:${}
设置变量.jpg

2.1.2.函数式

随机数:

2.1.3.变量

2.1.4.编程式

005. 断言

目前来讲一般断言业务代码和内容


006. 关联

第1种方式:正则表达式


007. 生成测试报告

1.命令格式

在系统终端输入jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder],例如:jmeter -n -t D:\jmeter_hrx\630UAT人员管理入职造数据.jmx -l result.jtl -e -o D:\jmeter_hrx\result;

2.参数说明

-n —— 非GUI模式执行JMeter;
-t —— 测试计划保存的路径及文件名;
[jmx file] —— 测试计划保存的路径及.jmx文件名,路径可以是相对路径也可以是绝对路径,它依赖于DOS中当前目录,如果DOS中当前目录在C盘AA目录下,测试计划.jmx文件保存在E盘BB目录下,那么应该写绝对路径;
E:\BB\xx.jmx;如果DOS中当前目录在E盘AA目录下;
-l —— 保存生成测试结果的文件;
[results file] —— 保存生成测试结果的文件,jtl文件格式;
-e —— 测试结束后,生成测试报告;
-o —— 存放生成测试报告的路径;
[Path to web report folder] —— 存放生成测试报告的路径,它可以是相对路径也可以是绝对路径,也是依赖于DOS中当前目录,如果需要保存到DOS中当前目录中,那么就直接写相对路径;如果不保存在DOS中当前目录中,那么就必须绝对路径。如:DOS中当前目录在C盘AA目录下,而测试报告要放在 E盘report目录下,那么应该写绝对路径:E:\report,那么测试报告就会保存在E:\report目录下,注意:report是一个自定义的目录,原先在F盘中是没有report这个目录的,使用命令时相当于同时自动在F盘下自动新建了一个report目录。

3.测试报告分析

使用命令生成测试报告之后,打开index.html,在HTML文件中存在有三个目录(DashboardChartsCustoms Graphs
image.png
第一个目录 Dashboard(仪表盘、控制面板) :在此目录下存在有6个模块信息(Test and Report information、application performance index、Requests Summary、Statistics、Errors、Top 5 Errors by sampler)Test and Report information(测试和报告信息)Source file —— 生成报告的源文件、Start Time —— 开始时间、End Time —— 结束时间
image.png

application performance index(APDEX:应用程序性能指标):计算每笔交易APDEX的容忍和满足阈值基于可配置的值,范围在 0-1 之间,1表示达到所有用户均满意,T(Toleration threshold):容忍或满意阈值、F(Frustration threshold):失败阈值

image.png
Requests Summary(请求总结):成功与失败的请求占比,FAIL指失败率,PASS指成功率
image.png
Statistics(数据分析):类似于聚合报告
image.png
Lable —- 请求名称
Samples —— 请求数目
FAIL ——- 失败请求数目
Error% —— 错误率(测试中出现错误的请求的数量/请求的总数)
Average —— 响应时间平均值
Min —— 最小响应时间
Max —— 最大响应时间
90th pct ——- 90%用户响应时间
95th pct —— 95%用户响应时间
99th pct ——- 99%用户响应时间
Throughput —— 吞吐量
Received —— 每秒从服务器端接收到的数据量
Sent —— 每秒从服务器发出的数据量
Errors(错误情况)
Top 5 Errors by sampler(采样器的5大错误)


008. 并发场景测试