如何以编程方式使用Firebug网络面板数据?

时间:2009-01-30 21:14:01

标签: performance testing selenium firebug metrics

我的敏捷团队将为现有的房地产网站添加新功能。 随着我们添加功能,我们希望更好地处理网站的整体效果以及特定网页的效果。

我希望在每个页面的请求/响应基础上自动收集性能指标(例如,浏览器发送了哪些子请求,有多少请求,传输了多少数据,以及如何每个请求需要多长时间才能完成)。

Firebug 目前在其网络面板中捕获此信息,但是,我还没有找到任何方式以编程方式提取此信息。

有人知道在页面加载后提取这些信息的方法吗?

我们目前正在使用 Selenium 运行用户验收测试,我考虑将此功能添加到selenium界面,以便我们的测试可以运行并收集数据,而无需启动任何其他服务。

欢迎所有建议,包括利用其他工具/方法收集效果指标的建议。

谢谢。

6 个答案:

答案 0 :(得分:4)

Jan Odvarko撰写了一篇关于如何在Firebug中使用新的侦听器功能来记录网络面板结果的Tutorial

“自Firebug 1.4a13以来,Net面板引入了一些新事件,可以轻松收集所有网络请求以及Firebug收集和计算的相关信息。

此功能在Firebug扩展程序希望将网络活动信息存储到本地数据库或将其发送回服务器以进行进一步分析的情况下也很有用(我在这里考虑性能统计信息)。“

答案 1 :(得分:4)

查看FireBug的NetExport扩展程序。

步骤:

  1. 在首选项中启用autoexport(您也可以自动执行此操作)
  2. 选择要添加数据的文件夹
  3. 阅读文件

答案 2 :(得分:2)

虽然它不是直接的Firebug解决方案,但像Jiffy这样的东西会有帮助吗?

Jiffy几乎就像基于服务器的Firebug测量工具一样。我还没有愤怒地使用它,但它可能会做你想要的东西?

http://code.google.com/p/jiffy-web/

Jiffy允许开发人员:

  • 衡量每个客户端上的各个页面呈现(脚本加载,AJAX执行,页面加载等)
  • 将这些度量和其他元数据报告给Web服务器
  • 将Web服务器日志聚合到数据库中
  • 生成报告

答案 3 :(得分:1)

有一种方法可以使用ySlow将性能数据标记到您选择的URL。它没有详细记录,我发现的唯一信息是:

http://tech.groups.yahoo.com/group/exceptional-performance/messages/490?threaded=1&m=e&var=1&tidx=1

除此之外,我会考虑编写一个Firebug插件,我认为你可以访问大多数Firebug属性。这是一个教程:http://www.firephp.org/Reference/Developers/ExtendingFirebug.htm

答案 4 :(得分:1)

本, 我已经通过扩展的Selenium RC的ProxyHandler对这些URL进行排队,然后允许您通过其他API将它们拉下来。它要求您代理所有,这不是Selenium的默认行为。好消息是,Selenium最终成为推动自动化和收集结果的地方。

这可能是我们很快就会加入到Selenium RC的一个功能,因为我们已经开出1.0了(我们非常关闭!)。

答案 5 :(得分:0)

好吧,我承认这不是一个直接的答案,但如何直接进入源头?切断FireBug并转到Web服务器。服务器是否可以以足够的粒度记录事件以允许计算您需要的信息?将日志文件解析为有用的数据应该不是特别困难,并且具有独立于用户平台的优点,并且有可能记录比FireBug(Awesome tool btw)提供的更多数据集。