Как заглянуть внутрьэлемент за метром? - PullRequest
0 голосов
/ 24 октября 2019

мне нужно увидеть какой-то элемент внутри отл. или j-метром, но программа не может увидеть его в дереве результатов просмотра.

Ответы [ 2 ]

0 голосов
/ 24 октября 2019

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

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

Поэтому я ожидаю, что содержимое вашего тега <app-root> заполняется с помощью какой-либо формы запроса AJAX , который запускается JavaScript, когда вы открываете страницу в реальном браузере, ноон не выполняется автоматически при запуске теста JMeter. Вы можете воспроизвести поведение в браузере, отключив JavaScript

Так что вам нужно добавить дополнительный сэмплер HTTP Request , чтобы имитировать этот вызов AJAX и <app-root> содержимое тега будет возвращено в качестве ответа.

Если на главной странице вашего приложения запущено несколько запросов AJAX, вы должны поместить соответствующие сэмплеры HTTP-запросов в Parallel Controller , поскольку реальные браузеры выполняют запросы AJAX параллельно и хорошо. Поведение JMeter должно отражать эту сетевую зону со 100% точностью

0 голосов
/ 24 октября 2019

Angular-приложение - это своего рода JS-приложение, которое на лету создает свой контент на стороне клиента (в браузере). Сгенерированный контент затем вводится в <app-root>. Вы не можете получить его содержимое с помощью статических методов удаления из Интернета, как вы, вероятно, пытаетесь использовать.

Вам нужен либо реальный браузер, либо его эквивалент, поддерживающий JS, откройте данную страницу, подождите, пока приложение сгенерирует, а затем исследуйте DOMиспользуя стандартные методы.

Вы можете попробовать использовать Selenium для этого - это фреймворк, который позволяет вам управлять браузером - таким образом, делайте то, что я описал выше. Я использовал селен с браузером Chrome без головы для веб-проверки с большим успехом.

Подробно о том, как это сделать, я слишком широко описываю и не по теме по этому вопросу.

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