Тест производительности на веб-странице, которая загружает данные из нескольких API - PullRequest
0 голосов
/ 02 марта 2020

У нас есть веб-страница, которая будет загружать данные из нескольких API в соответствии с настройками пользователей. Выполняя тест производительности этой страницы, в HTTP-запросе я добавил URL-адрес этой страницы и выполнил скрипт. К моему удивлению, сценарий успешно выполнен со статусом 200, когда я копаюсь в другом, я изменил раскрывающийся список (в дереве результатов просмотра) с текста на HTML (ресурсы для загрузки) и не вижу никаких данных страницы в ответе , Может кто-то помочь мне с этим. Я не уверен, как продолжить тестирование производительности на этой конкретной странице.

1 Ответ

0 голосов
/ 02 марта 2020

Согласно Главная страница проекта JMeter :

JMeter не является браузером

JMeter не является браузером, он работает на уровне протокола. Что касается веб-сервисов и удаленных сервисов, JMeter выглядит как браузер (точнее, несколько браузеров); однако JMeter не выполняет все действия, поддерживаемые браузерами. В частности, JMeter не выполняет Javascript, найденные на HTML страницах. Также он не отображает HTML страниц как браузер (можно просмотреть ответ как HTML et c., Но тайминги не включены ни в какие выборки, и одновременно отображается только одна выборка в одном потоке).

Я ожидаю, что ваши "множественные API" будут вызваны JavaScript звонки с использованием AJAX технологии . Учитывая, что JMeter не оценивает JavaScript, он не выполняет AJAX запросов, которые вызываются реальным браузером, поэтому вы не видите данных, поступающих из API.

Чтобы получить поведение, подобное браузеру, вам нужно отправлять те же запросы, которые отправляет реальный браузер, вы можете записывать их из реального браузера, используя HTTP (S) Test Script Recorder или JMeter Chrome расширение

Также имейте в виду, что реальные браузеры выполняют AJAX запросов параллельно, чтобы правильно имитировать сетевую площадь браузера, необходимо разместить сэмплеры HTTP-запросов, представляющие эти API запросы под Параллельный контроллер

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...