asp.net – 自动化Web应用前端性能测试的替代方案

我正在寻找一种方法来定期测试我的Web应用程序的前端性能.

具体来说,我有兴趣解决主机名,从服务器获取响应,下载/渲染/执行资源等等.我也想在与应用程序交互时测量这些事情,而不仅仅是在加载页.

我可以手动与我的Web应用程序交互使用Firebug或Chrome Developer Tools,但是我希望这个前端性能测试是我持续集成过程的一部分.我想要有夜间的前端性能测试结果,这样可以很容易地捕捉到性能回归.这就是为什么我的初步结论之一是我想利用我现有的功能性Selenium / WebDriver测试套件(或测试套件的一部分).

所以假设我使用Selenium与我的Web应用程序进行交互,我真正需要的是测量浏览器前端性能的工具.

到目前为止,我已经看过三个选项:

1)browsermob-proxy

browsermob-proxy是使用HAR格式捕获性能数据的开源代理.除了Java和NodeJS绑定外,它还提供了HTTP REST API.因为它是分析HTTP流量的代理,它不会给我任何关于浏览器中发生的情况(例如渲染等)的信息,这是我最感兴趣的.

2)WebPagetest

WebPagetest也是开源软件,可作为webpagetest.org上的免费云服务提​​供.设置此服务的私有实例是可能的(而不是太难).我给它一个URL,并且获得该页面加载的性能报告.但是,它不允许我监视应用程序,而我正在与它进行交互 – 这是至关重要的 – 尤其是在一个单一的Web应用程序中,很多东西在客户端 – 像我的一样.

3)Compuware APM AJAX Edition(以前的DynaTrace AJAX版)

Compuware APM AJAX版是免费的(如免费的)专有软件,使用浏览器插件从浏览器中捕获信息,这意味着它可以在Selenium测试套件执行期间自动收集数据.

将其自动化并将其执行集成到一个持续的集成过程中非常容易,但报告仍然需要很多.测试结果分为“会话”,这是从浏览器窗口打开到关闭的时间段.没有用于比较测试结果随时间推移的功能,这使得很难跟踪进度和捕获回归.

Compuware APM AJAX版是迄今为止看到的最好的选择,但是还有更好的选择 – 对吗?

解决方法

如何使用YSlow和/或谷歌速度与硒.

>创建单独的firefox配置文件一个用于Google Page Speed,另一个用于YSlow.
>在相应的配置文件中安装扩展
>为两个配置文件安装Firebug,并在其各自的配置文件中分别设置Page Speed和YSlow(每个配置文件都分别安装和配置了扩展).
>使用Selenium加载自定义配置文件

阅读更多herehere

以上链接给出了一个想法.希望这可以帮助.

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....