一个不错的国外的测试前端网站性能的免费工具:webpagetest

    科技2025-05-28  13

    在极客时间的软件测试52讲中,看到一个不错的国外的测试前端网站性能的免费工具:webpagetest,主要 是免费模拟测试网站的前端性能,能模拟多种模拟器,世界各地的分布式。

     

    而且还可以企业内部部署或者做流水线:

    第一个问题是,如果被测网站部署在公司内部的网络中,那么处于外网的 WebPagetest 就无法访问这个网站,也就无法完成测试 。要解决这个问题,你需要在公司内网中搭建自己 的私有 WebPagetest 以及相关的测试发起机。具体如何搭建,你可以参考 WebPagetest 官网的建议 ,这里我就不再继续展开了。 第二个问题是,用 WebPagetest 执行前端测试时,所有的操作都是基于界面操作的,不 利于与 CI/CD 的流水线集成 。要解决这个问题,就必须引入 WebPagetest API Wrapper。 WebPagetest API Wrapper 是一款基于 Node.js,调用了 WebPagetest 提供的 API 的 命令行工具。也就是说,你可以利用这个命令行工具发起基于 WebPagetest 的前端性能测 试,这样就可以很方便地与 CI/CD 流水线集成了。具体的使用步骤如下: 1. 通过“npm install webpagetest -g”安装该命令行工具; 2. 访问 https://www.webpagetest.org/getkey.php 获取你的 WebPagetest API Key; 3. 使用“webpagetest test -k API-KEY 被测页面 URL”发起测试,该调用是异步操作, 会立即返回,并为你提供一个 testId; 4. 使用“webpagetest status testId”查询测试是否完成; 5. 测试完成后,就可以通过“webpagetest results testId”查看测试报告,但是你会发现 测试报告是个很大的 JSON 文件,可读性较差; 6. 通过“npm install webpagetest-mapper -g”安装 webpagetest-mapper 工具,这 是为了解决测试报告可读性差的问题,将 WebPagetest 生成的 JSON 文件格式的测试 报告转换成为 HTML 文件格式; 7. 使用“Wptmap -key API-KEY --resultIds testId --output ./test.html”将 JSON 文件 格式的测试结果转换成 HTML 格式

    进行访问,可惜要翻墙了。测试了下,很不错。

    Processed: 0.009, SQL: 8