Как я могу программно использовать данные сетевой панели Firebug?
Моя гибкая команда добавит новые функции на существующий веб-сайт недвижимости. По мере добавления функций, которые мы хотим иметь более эффективный дескриптор производительности сайта, а также производительности отдельных страниц.
Я хотел бы автоматизировать сбор показателей производительности на основе запроса/ответа для каждой страницы (например, какие суб-запросы отправляются браузером, сколько их там, сколько данных передано и сколько времени запрос принять, чтобы выполнить).
Firebug в настоящее время фиксирует эту информацию на своей сетевой панели, однако я не нашел способа программно вытащить эту информацию.
Кто-нибудь знает, как извлечь эту информацию после загрузки страницы?
В настоящее время мы проводим наши пользовательские приемочные тесты с Selenium, и я рассмотрел возможность добавления этой функции в интерфейс селена, чтобы наши тесты могли запускаться и собирать данные без запуска какой-либо другой службы.
Все предложения приветствуются, в том числе те, которые используют другие инструменты/методы для сбора показателей производительности.
Спасибо.
Ответы
Ответ 1
Ян Одварко написал Tutorial о том, как использовать новую функцию прослушивателя в Firebug для регистрации результатов панели net:
"Так как Firebug 1.4a13 панель Net включает в себя, помимо прочего, несколько новых событий, которые позволяют легко собирать все сетевые запросы, а также связанную с ними информацию, собранную и вычисленную Firebug.
Эта функциональность должна быть полезна также в случаях, когда расширения Firebug хотят сохранить информацию о сетевой активности в локальной базе данных или отправить ее обратно на сервер для дальнейшего анализа (я думаю о статистике производительности здесь).
Ответ 2
Взгляните на расширение NetExport для FireBug.
Шаги:
- включить autoexport в настройках (вы также можете автоматизировать это)
- выберите папку, в которую должны быть добавлены данные.
- Прочитайте файл
Ответ 3
Пока это не является решением Firebug, возможно, что-то вроде Jiffy поможет?
Jiffy в значительной степени работает как серверная версия инструментов измерения Firebug. Я еще не использовал его в гневе, но он может делать то, что вы ищете?
http://code.google.com/p/jiffy-web/
<я > Jiffy позволяет разработчикам:
- измерять отдельные фрагменты страницы (script загрузка, выполнение AJAX, загрузка страницы и т.д.) на каждом клиенте
- сообщите об этих измерениях и других метаданных на веб-сервере.
- агрегированный веб-сервер регистрируется в базе данных
- генерировать отчеты
Ответ 4
Существует способ использования 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
Ответ 5
Бен,
Я сделал это с помощью расширенного Selenium RC ProxyHandler, чтобы помещать в очередь просматриваемые URL-адреса, а затем разрешать вам переносить их через какой-либо другой API. Это требует, чтобы вы проксировали все, что не является поведением Selenium по умолчанию. Самое приятное, что Selenium в конечном итоге становится местом для автоматизации и сбора результатов.
Это, вероятно, функция, которую мы вскоре добавим в Selenium RC сразу после того, как получим 1.0 из двери (мы очень закрываем!).
Ответ 6
Хорошо, я признаю, что это не прямой ответ, но как насчет права на источник? Выключите FireBug и перейдите на веб-сервер. Может ли сервер регистрировать события с достаточной детализацией, чтобы можно было рассчитать требуемую информацию? Разбор лог файла на полезные данные не должен быть особенно сложным и имеет преимущество независимо от пользовательской платформы и имеет возможность регистрировать больший набор данных, чем тот, который предлагает FireBug (Awesome tool btw).