Тестирование производительности — это тип нефункционального тестирования, который измеряет, как веб-приложения, веб-страницы или фреймворки реагируют при тестировании на различные уровни нагрузки, чтобы увидеть, как они действуют и реагируют при загрузке в течение определенных периодов времени. В этой статье мы объясним, как использовать селен и его семейство инструментов для проведения тестов производительности. Хотя не рекомендуется использовать только Selenium и WebDriver для проведения нагрузочных тестов, эта статья объяснит процесс создания теста нагрузки с селеном, а также покроет преимущества решения, как LoadView.
Что такое Selenium WebDriver?
Selenium WebDriver используется для автоматизации тестирования веб-приложений, чтобы проверить, что он заполняет в истинной форме. Он поддерживает многочисленные браузеры, например, Firefox, Chrome, Internet Explorer и Safari. В любом случае, используя WebDriver, мы можем автоматизировать тестирование веб-приложений, как это было. Он не соответствует счету для приложений на базе Windows. Он также укрепляет различные диалекты программирования, например, C, Java, Perl, PHP и Ruby для составления содержимого теста. Selenium WebDriver является этап бесплатно, так как аналогичный код может быть использован на различных операционных системах, таких как Windows, iOS, Linux и Ubuntu. Это один из сегментов семьи Селена, который дополнительно включает в себя Selenium IDE, Selenium Client API, Selenium Remote Control и Selenium Grid.
Selenium WebDriver не имеет дело с Windows, но это ограничение может быть перегружено с помощью сторонних инструментов, например, AutoIT, Sikuli и других. Он имеет различные процедуры области тоже, например, ID, имя, текст ссылки, частичное соединение текст, название класса, CSS Selector и Xpath. Он также имеет лучшую поддержку динамических страниц, таких как AJAX, где компоненты страницы могут меняться без перезагрузки самой страницы. Используя различные контейнерные документы, мы можем также протестировать API, базы данных и так далее, используя Selenium WebDriver.
Архитектура Селен WebDriver
Selenium WebDriver API предоставляет корреспонденцию между языками и браузерами. На сопроводительном снимке изображен композиционный образ Selenium WebDriver.
Есть четыре основные части архитектуры WebDriver:
- Связывания селена языка
- Протокол провода JSON
- Драйверы программ
- Подлинные браузеры
Связывания селена языка
Тестеры нагрузки селена сделали переплеты языка/Библиотеки клиента Selenium для того чтобы помочь многочисленнNp диалектам. Например, при возможности использования драйвера программы в Java используйте сборку Java. Все поддерживается языковые привязки могут быть загружены с официального сайта Селена. Количество клиентов Селена значительно развилось через некоторое время. Многочисленные клиенты подразумевают многочисленные стеки улучшения, которые должны быть поддержаны, и сетевую документацию для использования Селена с различными диалектами, используя WEBDriver API в качестве основной полезности, которая будет использоваться с помощью связывания.
Протокол провода JSON
JSON (JavaScript Object Notation) является открытой нормой для торговли информацией в Интернете. Он лежит в основе информационных структур, таких как статья и выставка. Таким образом, это ничего, но трудно составить и ознать информацию из JSON. Протокол провода JSON дает компонент корабля для того чтобы двинуть информацию между клиентом и сервером. Протокол провода JSON заполняет в качестве отраслевого стандарта для различных веб-администраций REST.
Драйверы программ
Selenium использует драйверы, явные для каждой программы, с тем чтобы создать защищенную ассоциацию с программой, не раскрывая внутреннего обоснования полезности программы. Драйвер программы также явно отливен языку, используемому для автоматизации, например, Java, C-C и так далее. В момент, когда мы выполняем тестовый контент с использованием WebDriver, сопутствующие действия выполняются внутри.
- Спрос на HTTP создается и отправляется водителю программы для каждого заказа Селена.
- Водитель получает требование HTTP через работника HTTP.
- HTTP Server выбирает все средства для выполнения руководящих принципов, которые выполняются в программе.
- Статус выполнения отправляется обратно на http Server, который, следовательно, отправляется обратно в автоматизированный контент.
Подлинные браузеры
Браузеры, поддерживаемые Selenium WebDriver, включают в себя следующее:
- Исследователь Интернета
- Mozilla Firefox
- Google Хром
- сафари
Особенности Selenium WebDriver
Различная поддержка браузера
Selenium WebDriver поддерживает различные сферы интернет-браузеров, например, Firefox, Chrome, Internet Explorer, Opera и многое другое. Он также лежит в основе части неохтных или необычных программ, таких как HTMLUnit. HTMLUnit является безголовые браузер, или браузер, который не использует графический интерфейс пользователя. Многие решения для тестирования нагрузки с открытым исходным кодом используют безготовные браузеры, так как тестеры производительности могут инициировать много трафика на основе протокола. Проблема, однако, с безголюй браузеров является то, что они не могут проверить клиент стороне скриптов, так что фактическая производительность с точки зрения пользователя упущена.
Тесты на основе протокола против реальных тестов на основе браузера
Тесты на основе протоколов были очень популярны в первые годы работы Интернета. Однако со временем рамки веб-приложений и браузеры эволюционировали, и теперь те, которые когда-то были популярными методами тестирования нагрузки, становятся все более устаревшими. Хотя тесты HTTP используются и сегодня, это затрудняет тестирование нагрузки по мере у сложности веб-сайтов.
Современные веб-приложения полагаются на поведение и действия клиентов, а не на сервер для навигации, поиска и т.д. Например, одностраничные приложения (СП) полагаются на небольшое участие сервера после загрузки страницы. Там может быть некоторое динамически загруженное содержимое со стороны сервера, но с точки зрения пользователя, это обеспечивает им более бесшовный опыт без постоянной загрузки новых страниц.
Поддержка различных языков
WebDriver дополнительно укрепляет большую часть обычно используемых диалектов программирования, таких как Java, C, JavaScript, PHP, Ruby, Pearl и Python. Впоследствии клиент может выбрать любой из поддержанных языков программирования, зависящих от их компетентности, и начать построение тестового содержимого.
скорость
WebDriver работает быстрее, когда контрастирует с различными аппаратами Selenium Suite. ему не нужна середина дорожного работника, чтобы поговорить с программой; скорее устройство прямо говорит с программой.
Основные команды
Большинство заказов, используемых в Selenium WebDriver ничего, но трудно актуализировать. Например, для отправки программы в WebDriver используются следующие заказы:
- Драйвер WebDriver – новый FirefoxDriver(); (Программа Firefox)
- Драйвер WebDriver – новый ChromeDriver (); (Программа Chrome)
- Драйвер WebDriver – новый InternetExplorerDriver (); (Программа Internet Explorer)
WebDriver-Методы и классы
WebDriver предоставляет различные ответы для адаптации к некоторым из возможных трудностей в тестировании автоматизации. WebDriver дополнительно позволяет анализаторам управлять всевозможными сложными веб-компонентами, например, чек-боксами, каплями и предостережениями.
Тестирование нагрузки с использованием селена
Есть несколько шагов, когда дело доходит до загрузки тестирования с помощью Selenium WebDriver.
Создание конфигурации браузера
Сделайте thread Group и включите “Chrome Driver Config” из меню Config Elements.
В этот момент, вы должны дать загруженный ChromeDriver как способ вашего элемента Config.
Реализация теста
Включите WebDriver Sampler в группу thread. Это принесет фундаментальный контент, который открывает страницу сайта. Мы должны контролировать этот контент. Таким образом, чтобы сотрудничать с программой, вы должны использовать Selenium явные методы, как sendKeys, нажмите (), и так далее. Вот несколько советов:
Просмотр открытой команды
Эта команда открывает данный URL
Таким образом, чтобы сделать некоторые пользовательского интерфейса явной деятельности, вы должны импортировать org.openqa.selenium расслоение для вашего содержания. Просто добавьте эту строку в содержимое.
Командование SendKeys
В случае, если вы знаете о селена, вы понимаете, что вы можете прийти к компоненту cssSelector, ID, XPath и так далее pkg переменной, что мы сделали, что поощряет вас обнаружить веб-компонент. Таким образом вы обнаружите компонент. Вы храните webElement в переменной под названием searchField.
В этот момент, вы просто использовать стандартные работы Селена SendKeys думать о некоторых содержание.
Нажмите На команду
Селен имеет основной оснастки порядка. Вы просто использовать аналогичную емкость после получения webElement. Начнем с того, что мы храним компонент и разыграем активность привязки.
Дополнительные команды
Помимо этих основных заказов, мы должны использовать несколько заказов, явно предназначенных для селена, так что селен будет иметь возможность поймать пробоирер начала и конца времени. Эти два метода пошлют селен начала и конца сигналы для выявления целей.
Команда журнала
Вы должны сделать некоторые регистрации во время теста. В этот момент вы просто использовать под заказ. Также пользователь может видеть результаты нагрузочных тестов.
Виды запросов
Есть два вида ходатайств вы можете быть комфортно с, GET и POST.
На шанс, что это get запрос, в этот момент это приводит к реакции, которая будет создана в конце программы, и она будет отправлена по HTTP для драйвера программы и в долгосрочной перспективе, драйвер программы с помощью JSON провода конвенции посылает его на пользовательский интерфейс (Eclipse IDE).
Преимущества Selenium WebDriver
- Это одна из наиболее популярных программ с открытым исходным кодом, и с самого начала с тестирования онлайн-приложений это с трудом. Это дополнительно позволяет выполнять кросс-тестирование сходства программы.
- Поддерживает различные рабочие платформы, такие как Windows, Mac, Linux, Unix и так далее.
- Это дает сходство сфере диалектов, включая Python, Java, Perl, Ruby и так далее.
- Предлагает помощь для текущих программ, таких как Chrome, Firefox, Opera, Safari и Internet Explorer.
- Selenium WebDriver быстрее завершает выполнение тестового содержимого при контрасте с различными инструментами
- Более краткий API (Интерфейс программирования приложений) на тот момент Selenium RC
- Это дополнительно дает сходство iPhone Драйвер, Html Unit Driver и Android Driver
Трудности с селеном
Трудности с селеном включают в себя следующее:
- Поддерживает просто тестирование веб-приложений
- Он не принимает экзамен Bitmap
- Для любых подробных связанных способностей хост полагаться на сторонние инструменты.
- Никакая поддержка поставщиков для аппаратов не противопоставлялась бизнес-устройствам, таким как HP UFT
- Поскольку нет ORC (оптическое распознавание символов), практичность элементов становится хлопотно
LoadView: Нагрузка и стресс-тестирование в реальных браузерах
LoadView позволяет разработчикам и тестеорам быстро создавать нагрузочных и стресс-тестов для множества элементов, таких как веб-приложения, веб-страницы, API, потоковые медиа и т.д. Все ресурсы управляются для вас. Решения полностью веб-и нет необходимости в дополнительном оборудовании или программном обеспечении, как загрузок инъекционных серверов все управляется для вас.
Для веб-приложений пользователи могут использовать Веб-регистратор EveryStep и указывать и щелкать по приложению так же, как это было бы с пользователем или клиентом. Эти скрипты затем загружаются на платформу LoadView, где, с помощью всего лишь нескольких кликов, можно создать сценарий тестирования нагрузки и запустить тест. Не тратьте время вручную сценарии сценариев для веб-приложений. Узнайте больше об особенностях LoadView.
Преимущества LoadView
Вот лишь некоторые из больших преимуществ LoadView:
- Простой в использовании. Он имеет простой для понимания пользовательский интерфейс
- Включает в себя EveryStep Web Recorder для легкой и быстрой записи скрипта
- Интегрируется с инструментами непрерывной интеграции, такими как Jenkins
- Поддерживает многие технологии и фреймворки, браузеры и устройства
- Тест из почти 20 глобальных мест
- Может тестировать на уровне протокола, а также с помощью реальных браузеров
Основные различия между LoadView и селеном
LoadView |
селен |
LoadView — это веб-решение | Селен – это осязаемая библиотека программирования, а не аппарат |
LoadView не нуждается в расширенной поддержке для кросс-браузерного тестирования | Selenium поддерживает широкий спектр браузеров для перекрестного тестирования браузера |
LoadView масштабировать все, и пользователь может видеть графическое представление тестирования нагрузки | Селен не масштабировать хорошо |
LoadView может захватить видео для легкого устранения неполадок | Selenium WebDriver не в состоянии запечатлеть видео и устранение неполадок |
Тестовый набор Selenium может состоять из набора TestNG XML. Как следует из названия, это документ XML, который изображает целый набор тестов Selenium/ситуацию, которая будет выполнена. Последующая запись может быть разделена между тестовыми машинами, признав, что они имеют аналогичное обоснование включения теста.
Селен можно использовать для некоторых презентационных тестов (например, ограниченного тестирования передачи данных), но он не может быть использован для укладки теста с точностью, как LoadView. Например, селен не может производить контролируемое количество запросов в течение значительного периода времени. LoadView настраивает детали тестирования нагрузки, такие как одновременные пользователи, задержки, время срастанию/смахивки и многое другое.
И, как мы упоминали ранее, LoadView может записывать пошаговие скрипты для сеансов веб-приложений через реальные браузеры и воспроизводить веб-сессии, как сервер видит их. Кроме того, LoadView имеет еще один опыт конечного клиента включены, что позволяет проверить ваши веб-страницы и посмотреть, что клиенты видят, когда ваш сайт находится под нагрузкой.
После завершения тестов можно просматривать данные через отчеты о производительности, отчеты о сеансах, диаграммы водопадов и т.д., чтобы увидеть разбивку производительности каждого элемента и компонента. Много времени, Есть ошибки и ошибки, что ваши пользователи могут даже не знать, но это влияет на время загрузки и производительность. Вы можете точно видеть, где находятся проблемы, так что ваши команды могут исправить их быстро.
Вывод: Селен Нагрузки Тестирование Разъяснения
LoadView и Selenium используются для тестирования веб-приложений. Тем не менее, принципиальное различие заключается в том, что LoadView обычно используется для тестирования презентации веб-приложений под нагрузкой и стрессом. Опять же, Selenium является наиболее подходящим для автоматизации и кросс-программного тестирования сайта. В свете того, какое тестирование важно для предприятия, можно, безусловно, использовать LoadView для удовлетворения всех своих потребностей в тестировании производительности.
LoadView предоставляет поставляется готов со многими вне коробки функции, которые большинство инструментов на рынке не включают. Кроме того, пользователи имеют возможность выбирать из нескольких планов на основе подписки или плана по требованию, который наилучшим образом соответствует потребностям вашей организации.
Попробуйте LoadView для себя сегодня! Или еще лучше, запланировать жить демо с одним из наших инженеров производительности. Они будут принимать вас шаг за шагом через платформу LoadView и показать вам, как именно настроить, настроить и выполнить нагрузочных тестов.
Логотип селена: Диего Молина (diemol) / CC BY-SA (https://creativecommons.org/licenses/by-sa/4.0)