尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
自动化Web页面性能测试介绍
随着越来越多的用户使用移动设备访问 Web 应用使得 Web 应用需要支持一些性能并不是很好的移动设备。为了度量和测试 Web 应用是不是在高复杂度的情况下页面性能能满足用户的需求。同时随着 Web 应用的空前发展前端业务逐渐复杂为了处理这些复杂业务前后端分离出现了专门应对这种分离架构的应用开发框架比如 AngularReactVue 等从而也导致 Web 应用的复杂度大大增加并出现了 SPA。1、前端页面性能测试前端页面性能测试本质上和本地应用性能测试类似其性能和运行应用的设备的性能强相关即运行被测系统的硬件性能越强性能也越强。所以测试前端页面性能需要找到一个固定配置的硬件来测试其性能基线然后通过这个基线推测或者计算其他硬件配置下的性能情况。其中在项目开发的过程中持续对一个固定配置的硬件进行性能测试也可以判断性能在开发过程中趋势从而第一时间发现性能问题。而测试性能基线一般是选用最为普通和常规的配置而不能选用最为流行的高性能配置不然得到的基线很容易让测试人员有一种页面性能很高的误解。前端页面性能一般都是有专业的性能工具来做比如免费的 WebPageTest、PageSpeed Insights、SiteSpeed 等。这些功能都能检测前端页面的各种性能指标但是这些工具要么只提供基于在线服务导致安全性无法保证要么安装和配置比较复杂或者无法自动执行导致很难和持续构建流水线集成。Google 开发的免费的 Lighthouse很好地解决了以上的问题。2、LighthouseLighthouse 是 Google 开发的一款分析 Web 应用和 Web 页面的性能的工具。除了性能它还可以分析 Web 页面的 Accessibility各种页面最佳实践Best PracticesSEO 以及 Progressive Web App 的能力对它们打分并展示出每一项基础项目的数据和结果如下图其中对于性能的分数它是根据 6 个不同的性能指标计算而得到的如下图而这 6 个性能指标又来于 Chrome DevTool 中的 Performance点击上图中的“View Original Trace”可以跳转到 Performance见下图所以Lighthouse 中的 Performance 所计算的分数是真实性能分数通过这个分数可以了解到这个页面整体的性能情况。由于 Lighthouse 除了支持通过 Chrome DevTool 和 Chrome Extension 的手动的方式来使用以外还可以通过 Node CLI 和 Node Module 的方式来使用。这种方式特别适合在集成流水线中使用用以持续测试前端页面的性能并检测页面性能随着开发而产生的变化趋势从而尽早地发现前端页面的性能问题。3、Cypress 和 Lighthouse实施前端页面自动化性能测试最好的方式就是将它嵌入 Web App 的功能或者端对端自动化测试过程中当功能和端对端自动化测试执行的过程中就执行了自动化性能测试。Cypress 是当前最为流行的 Web 自动化测试框架之一它有一款插件 Cypress-Audit 就很好地集成了 Lighthouse 的功能。它能在 Cypress 的自动化测试运行的过程中针对每张测试过的页面生成 Lighthouse 的性能分数并展示在 Cypress 的测试报告中。而且还可以针对这些分数做断言使得当某个页面的分数低于某个阈值的时候持续构建流水线就会中断从而通知开发人员或者测试人员对其进行性能分析从而发现可能存在的性能问题。首先需要在 Cypress 的自动化测试代码中配置这 6 个性能指标的阈值比如配置 First Contentful Paint 的阈值时间为 1000 毫秒配置代码如下:cy.lighthouse({performance: 85,first-contentful-paint: 1000,accessibility: 10,best-practices: 10,seo: 10,pwa: 10,});然后在执行 Cypress 自动化测试的过程中某个页面的指标不满足配置好的阈值比如 First Contentful Paint 的时间超过了 1000 毫秒测试就会失败其测试报告如下图然后可以手动在使用 Chrome 浏览器中的 LightHouse 和 Performance DevTools 去分析其性能问题并通过优化将这个 First Contentful Paint 的时间降到 1000 毫秒以下其测试就会通过。或者通过分析得知无法提高这个指标将阈值时间改到 2000 毫米测试也会通过。4、总结随着页面越来越复杂前端页面的性能测试势在必行。其次随着页面规模越来越大和持续迭代交付的流行前端页面自动化性能测试一定能节约大量人力成本并且还能尽早地发现一些性能问题。最后还需要将其嵌入到前端 Web 应用的功能测试中从而可以节省其开发成本并且可以容易地在持续集成流水线上执行最终实现持续前端页面性能测试。文章来源网络 版权归原作者所有上文内容不用于商业目的如涉及知识产权问题请权利人联系小编我们将立即处理
RELATED

相关推荐

SPT-AKI存档编辑器完整上手指南:5分钟读懂单机塔科夫的存档自由玩法

SPT-AKI存档编辑器完整上手指南:5分钟读懂单机塔科夫的存档自由玩法

SPT-AKI存档编辑器完整上手指南:5分钟读懂单机塔科夫的存档自由玩法 【免费下载链接】SPT-AKI-Profile-Editor Программа для редактирования профиля игрока на сервере SPT-AKI 项目地址: https://gitcode.com…

📅 2026/10/24 7:04:50
DigitalOcean转型AI工厂:为中小团队打造一站式智能体开发平台

DigitalOcean转型AI工厂:为中小团队打造一站式智能体开发平台

1. 从云服务商到AI工厂:DigitalOcean的转型之路如果你在2026年之前问我,DigitalOcean是家什么样的公司,我大概率会告诉你:一个对开发者非常友好的云服务商,以简单、可预测的定价和出色的文档著称,是很多初创…

📅 2026/9/8 2:43:51
关于文献【26年ACL时间检验奖2】

关于文献【26年ACL时间检验奖2】

1、 【我的问题】《SQuAD: 100,000 Questions for Machine Comprehension of Text》这篇论文的灵感是怎么来的?结论是什么? 【deepseek】 【我的总结】 灵感来源: (1)又是跨领域(计算机视觉和自然语言处…

📅 2026/10/6 7:39:32
MORE NEWS

更多资讯

📰

S7-1200 PUT/GET通信实战:连对、写对、防错三要素

简介:本资源是一份面向工业自动化工程师与PLC初学者的西门子S7-1200 PUT&GET通信实战教程,聚焦PROFINET环境下两台S7-1200 PLC间高效、稳定的数据交互问题,特别适用于需实现跨设备数据同步、分布式控制或项目升级迁移的工程场景。教程完整…

📰

控制器当Git服务器:TwinCAT 3 AdsGitServer版本回退

简介:这份PDF面向使用TwinCAT 3.1.4024及以上版本的自动化工程师与PLC协同开发人员,聚焦控制器内置AdsGitServer的版本管理实践,帮助读者在不依赖外部Git软件的情况下完成程序提交、获取、差异查看与版本回退。资源包共1个PDF文件&#xff0c…

📰

DeepSeek大模型API接入、流式输出与移动端配置指南

简介:《DeepSeek使用指南》面向具备一定编程背景的技术人员、产品经理及希望提升客户服务自动化水平的企业管理者,系统梳理大语言模型助手在网页端、API 集成与移动设备上的使用路径。资源以 1 个 docx 文档交付,压缩包约 16KB,篇…

📰

七端口交换板REV 2.1改版拆解:端口拓扑、复位与配置引脚复用

简介:这份PDF文档是88E6320_DB开发板的原理图设计资料,面向千兆以太网交换、嵌入式硬件及网络设备研发人员,可用于理解88E6320在QFN108封装下的参考电路与板级实现。内容覆盖电源与稳压器选型、POR芯片、MagJack、芯片顶层框图、RESET与GPHY …

📰

15页5G+VR智慧旅游方案PPT:VR观景台到数据中台的拆解复用

简介:面向旅游行业信息化从业者、景区运营方与智慧城市方案设计人员的5GVR智慧旅游解决方案演示文稿,聚焦5G网络与虚拟现实技术在旅游场景中的落地路径。内容围绕5G高速率、低时延、大连接特性与VR沉浸式交互体验展开,涵盖智慧旅游系统架构、…

📰

MySQL高阶篇之配置文件详解与各类客户端工具

本文系统梳理:服务端配置项与系统变量的对应关系、客户端公共选项、配置文件的加载顺序与优先级、配置文件的编写方法,以及 mysqlcheck、mysqldump、mysqlimport、mysqladmin、mysqlshow、mysqldumpslow、mysqlbinlog、mysqlslap 八大客户端工具的用法与…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬