Мы проводим серию тестов производительности на стороне клиента для большого веб-сайта, и мы в основном используем Fiddler и DynaTrace для наших измерений. Но мы столкнулись с двумя основными проблемами:
- Клиенты намереваются измерить асинхронную часть загрузки страницы (материал, который запускается после document.ready). Используя fiddler, сложно определить, какие http-запросы были частью исходной выборки страниц, а какие запускаются событием document.ready. Мы могли бы провести быстрый тест с отключенным JS, и это дало бы нам представление о том, какие выборки являются асинхронными, но это также не надежный метод, поскольку он не будет включать запросы, сделанные с помощью файлов JS, которые были загружены синхронно.
На бумаге DynaTrace кажется идеальным решением этой проблемы, но полученные из нее метрики, похоже, не соответствуют тому, что мы видим иначе. (Например, я создал фиктивную страницу с событием JQuery document.ready со встроенной задержкой, используя setTimeout. Я ожидал, что значение времени задержки будет точно соответствовать тому, что я вижу в DynaTrace как время, необходимое для события загрузки, но Я не видел этой корреляции.
- Проблема скриптинга и непрерывного измерения. Ни один из инструментов не кажется пригодным для сценариев таким образом, чтобы вы могли подключить его к системе CI и выпустить кучу цифр, которые когда-либо создавались.
Есть ли другой инструмент, который можно использовать для этого? Существуют ли отраслевые стандартные решения для лучшей практики, которыми пользуются люди? Любые доморощенные хаки?