关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。
想改进这个问题?将问题更新为 on-topic对于堆栈溢出。
8年前关闭。
Improve this question
我正在寻找一种方法来定期测试我的 Web 应用程序的前端性能。
具体来说,我对解析主机名、从服务器获取响应、下载/渲染/执行资源等所需的时间感兴趣。我还想在与应用程序交互时测量这些事情,而不仅仅是在加载页。
我可以在手动与我的 Web 应用程序交互时使用 Firebug 或 Chrome 开发者工具,但我希望这个前端性能测试成为我持续集成过程的一部分。我想有每晚的前端性能测试结果,这样就可以很容易地捕捉到性能回归。这就是为什么我的初步结论之一是我想利用我现有的功能 Selenium/WebDriver 测试套件(或测试套件的子集)。
所以假设我使用 Selenium 与我的 Web 应用程序交互,我真正需要的是一个工具来测量浏览器中的前端性能。
到目前为止,我已经研究了三个选项:
1) browsermob-proxy
browsermob-proxy 是一个开源代理,它使用 HAR 格式捕获性能数据。除了 Java 和 NodeJS 绑定(bind)之外,它还提供 HTTP REST API。因为它是一个分析 HTTP 流量的代理,所以它没有给我任何关于浏览器中发生的事情的信息(例如渲染等),这是我最感兴趣的。
2) WebPagetest
WebPagetest 也是开源软件,可在webpagetest.org 上作为免费云服务使用。设置此服务的私有(private)实例是可能的(并且不太难)。我给它一个 URL,然后我得到该页面加载的性能报告。但是,它不允许我在与应用程序交互时监控应用程序——这很重要——尤其是在客户端发生很多事情的单页 Web 应用程序中——比如我的。
3) Compuware APM AJAX Edition (以前的 DynaTrace AJAX 版)
Compuware APM AJAX 版是免费(免费)专有软件,它使用浏览器插件在浏览时从浏览器中捕获信息,这意味着它可以在 Selenium 测试套件执行期间自动收集数据。
将其自动化并将其执行集成到持续集成过程中非常容易,但是报告还有很多不足之处。测试结果被分组为“ session ”,即从浏览器窗口打开到关闭的时间段。没有随着时间的推移比较测试结果的功能,这使得很难跟踪进度和捕捉回归。
Compuware APM AJAX 版是迄今为止我见过的最好的替代品 - 但肯定有更好的东西 - 对吧?
最佳答案
使用 怎么样? Y慢和/或 谷歌页面速度 与 Selenium .
阅读更多 here和 here
上面的链接给出了一个想法。
希望这可以帮助。
关于asp.net - 自动化 Web 应用程序前端性能测试的替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18812326/