共计 1754 个字符,预计需要花费 5 分钟才能阅读完成。
性能测试报告模板:
链接: https://pan.baidu.com/s/1iQju…
提取码: 2gu6
前端性能剖析
应用 Chrome 浏览器
后果查看:
图中各种色彩代表的含意:
- 蓝色 Loading:加载
- 黄色 Scripting:脚本
- 紫色 Rendering:渲染
- 绿色 Painting:绘制
- 浅灰 Other:其余
若须要通过 Jmeter 进行测试,则须要☑️从 HTML 文件获取所有内含的资源
前端性能优化
- 动态资源加缓存,应用 CDN 与 独立域名
- JavaScript 压缩,去掉反复申请
- JavaScript 加载后移
- CSS 依赖缩小,置顶
- 异步接口申请优化、合并、缩小
- 查看页面申请失败与跳转的内部资源
- 缩小页面申请个数,缩小 JavaScript 与 CSS 加载
- JavaScript 内存泄露,JavaScript 革除定时器
Cache-Control: max-age=31536000
测试用例场景
数据分析
进行性能测试时,GUI 界面仅作为调试用;
实在运行性能测试时,应用非 GUI 形式运行。
应用命令行启动脚本:
参考链接:https://www.cnblogs.com/kaibi…
jmeter -n -t xxx.jmx
生成 jtl 文件:jmeter -n -t xxx.jmx -l xxx.jtl
生成的 jtl 文件,可通过 jmeter 中的监听器进行浏览
监听器中生成的图形,能够导出到 csv
间接生成 csv 文件:jmeter -n -t xxx.jmx -l xxx.csv
留神:须要批改 bin/jmeter.properties 配置文件
生产 csv 文件:jmeter.save.saveservice.output_format = xml
须要生成 jtl 文件时,须要将 xml 改为 csv
生产 jtl 文件:jmeter.save.saveservice.output_format = csv
生成 HTML 测试报告
jmeter -n -t xxx.jmx -l xxx.jtl -e -o HTMLReport(报告寄存文件夹)
注意事项:
- 命令执行门路下,不能存在 xxx.jtl 文件,曾经生成的,须要删除
- 命令执行门路下,必须要有 报告寄存文件夹,且文件夹内必须清空所有内容
测试报告展现:
重点关注 APDEX 表
Apdex 值是性能评测规范;
值的范畴:0~1
- 0:代表最差
- 1:代表最优
- 越靠近 1,示意性能越好
APDEX 具体阐明:
https://testerhome.com/topics…
非 GUI 运行动静线程
- 应用函数助手生成一个变量:
- 在线程组中利用生成值,其余变量同理:
- 以 Windows 零碎的 bat 脚本文件为例:
echo off
rem 生成以后日期
FOR /F "TOKENS=1,2 eol=/ DELIMS=/" %%A IN ('DATE/T') DO SET yyyy=%%A
FOR /F "TOKENS=1,2 DELIMS=/ eol=/" %%A IN ('DATE/T') DO SET mm=%%B
FOR /F "TOKENS=2,3 DELIMS=/" %%A IN ('DATE/T') DO SET dd=%%B
set date=%yyyy%%mm%%dd%
set tmp_time=%time:~-11,2%%time:~-8,2%%time:~-5,2%
set time=%tmp_time: =%
set d=%date%%time%
echo 以后日期: %d%
rem 获取用户输出的值
set thread=
set /p thread= 请输出线程数:
set everytime=
set /p everytime= 请输出阶梯间隔时间:
set ramp-up =
set /p ramp-up= 请输出线程启动工夫:
set hold =
set /p hold= 请输出持续时间:
rem 执行脚本
# -Jxxx 指定义变量,例如 -Jthread:定义了一个 thread 变量
# %thread%:读取第 16 行设置的变量 thread
call Jmeter -Jthread=%thread% -Jeverytime=%everytime% -Jramp-up=%ramp-up% -Jhold=%hold% -n -t 天猫.jmx -l Jtl 文件 /%d%_tmall/tmall_%d%.jtl -j Jtl 文件 /%d%_tmall/ 场景设计_%d%.log -e -o Jtl 文件 /%d%_tmall/tmall_%d%_httpreport
pause