Apache JMeter не выполняет Javascript, найденный на HTML-страницах

Я хочу провести тестирование производительности и загрузить свое веб-приложение с помощью Apache Jmeter. Мое веб-приложение содержит большую часть вызовов ajax и кода javascript. К сожалению, «Apache JMeter не выполняет Javascript, найденный на HTML-страницах, и не отображает HTML-страницы, как это делает браузер». Как протестировать мое веб-приложение с помощью Jmeter или есть ли какие-либо лучшие инструменты с открытым исходным кодом для таких приложений.

Любые идеи?


person siva565    schedule 02.03.2012    source источник


Ответы (1)


JMeter будет служить вашим инструментом нагрузочного/стресс-тестирования, но его сложно использовать в веб-приложениях, которые содержат много логики на стороне клиента.

Selenium — отличный инструмент функционального тестирования для веб-приложений, которые сильно зависят от клиентской логики, но он не предназначен для нагрузочное/стресс-тестирование.

В зависимости от вашего приложения вы можете разделить различные контексты тестирования между различными инструментами. Если вам нужно явно протестировать производительность JavaScript, то, как правило, вам подойдет профилировщик JavaScript. Если вы тестируете бизнес-логику на стороне клиента, Selenium будет здесь очень полезен. Когда вы тестируете серверные компоненты (доступ к базе данных, код среднего уровня и т. д.), JMeter будет лучшим решением.

Я склонен использовать все три инструмента в различных целях, так как я поддерживаю и тестирую приложение на основе ADF/JSF, которое очень тяжело для кода на стороне клиента. Серые области — это места, где код JavaScript считывает что-то из DOM, а затем отправляет на URL-адрес. Если цель состоит в том, чтобы загрузить тестовый URL-адрес, вы можете комбинировать Selenium и JMeter в отдельных тестовых прогонах: (1) для функционального тестирования (Selenium) и (2) путем жесткого подключения значений (тестовые данные, которые были бы получены из DOM/JS) в сэмплере запросов JMeter.

person T.P.    schedule 02.03.2012
comment
Спасибо JTP. Я использую Selenium для функционального тестирования. Но мое приложение основано на фреймворке Extjs, поэтому селен не может протестировать некоторые функции, такие как события всплывающих окон и древовидной панели. - person siva565; 02.03.2012
comment
Ох. Мне пока не приходилось сталкиваться с тестированием с использованием ExtJS. Я предполагаю, что иногда нет никакой замены человеческому взаимодействию для некоторых аспектов плана тестирования. - person T.P.; 02.03.2012
comment
По сути, я разработчик, но я хочу провести тестирование с помощью этих инструментов с открытым исходным кодом. Не могли бы вы предложить мне какие-либо лучшие сборы с открытым исходным кодом для тестирования производительности и нагрузки. - person siva565; 02.03.2012
comment
Для инструментов FOSS я использовал только JMeter и Selenium. Другие, которые я использовал косвенно, были коммерческими инструментами, такими как LoadRunner. - person T.P.; 02.03.2012