08-06 性能测试--测试报告与数据

性能测试报告模板:

链接: 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 运行动态线程

  1. 使用函数助手生成一个变量:

  1. 在线程组中应用生成值,其他变量同理:

  1. 以 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

机智的测试生活
双非大龄青年,转行测试工程师。 分享测试工程师的职业经验, 提供付费转行咨询

公号|机智的测试生活

83 声望
477 粉丝
0 条评论
推荐阅读
转正实录|陪你走一段路
转行的第一喜事,当然是收到Offer啦~拿到Offer的那一天,我松了一口气,算是实现了一个小目标。但我又意识到,接下来,游戏要升级了,即将要面临试用期的考验。

机智的测试生活阅读 488

封面图
一文教会你mock(Mockito和PowerMock双剑合璧)
Mock有模仿、伪造的含义。Mock测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法。mock工具使用范畴:

京东云开发者2阅读 376评论 1

封面图
源码学习之 Spring 容器创建原理
众所周知,Spring可以帮我们管理我们需要的bean。在我们需要用到这些bean的时候,可以很方便的获取到它,然后进行一系列的操作。比如,我们定义一个bean MyTestBean。

京东云开发者3阅读 450

封面图
测试自动化中遵循的最佳实践
现在的企业从以往一年、一个月、一周交付,逐渐转变为开始关注两到三天甚至一天内交付。软件自动化测试的出现及其与手动测试的结合使得这种时长的交付成为可能。

陈琦2阅读 512评论 1

一个漏测Bug能让你想到多少?
漏测Bug是指产品逻辑缺陷在测试过程中没有被发现(尤其是测试环境可以重现的缺陷),上线版本发布后或者在用户使用体验后发现并反馈回来的缺陷。可能造成线上故障或者资损,在对产品测试过程中,自己也难免出现一...

得物技术阅读 966评论 1

重写 Nacos 服务发现:多个服务器如何跨命名空间,访问公共服务?
这就意味着只需部署一个应用,就能满足所有测试环境的需求;也意味着所有测试环境都需要调用该公共应用,而不同测试环境的应用注册在不同的 Nacos 命名空间。

LigaAI阅读 629

封面图
结合 API & DaaS,让使用数据更方便
Eotalk 是由 Eolink CEO 刘昊臻发起的泛技术聊天活动,每期都会邀请一些技术圈内的大牛聊聊天,聊些关于技术、创业工作、投融资等热点话题。

Eolink阅读 595

公号|机智的测试生活

83 声望
477 粉丝
宣传栏