Рубрики
Без рубрики

Экспорт кода в Selenium IDE

Selenium IDE не сидит на месте. С момента его перезапуска в прошлом году разработчики Selenium IDE активно работали… Помечено как тестирование, java, github, с открытым исходным кодом.

Selenium IDE не сидит на месте. С момента его перезапуска в прошлом году разработчики Selenium IDE были заняты ответом на запросы пользователей об улучшении. Только что была выпущена одна очень востребованная функция – возможность экспорта кода из Selenium IDE для использования в Selenium WebDriver . Экспорт кода из Selenium IDE сегодня работает с Java JUnit . Команда разработчиков ищет таких членов сообщества, как вы, для расширения возможностей Selenium IDE.

Код размещен и доступен на Github. Вы можете ознакомиться с примерами, а также развить свои собственные экспортные возможности.

Но, во-первых, вот что нового.

Вы можете экспортировать тест или набор тестов в код WebDriver, щелкнув правой кнопкой мыши на

тест или набор, выбрав Экспортируйте , выбрав целевой язык и нажав Экспорт .

Это сохранит файл, содержащий экспортированный код для вашего целевого языка, в каталог загрузки вашего браузера.

Комментарии к Коду Отслеживания происхождения

При экспорте есть дополнительный переключатель для включения комментариев к исходному коду трассировки.

Это позволит поместить встроенные комментарии к коду в экспортированный файл с подробной информацией о шаге тестирования в Selenium IDE, который его сгенерировал.

Поддерживаемый Экспорт

В настоящее время Selenium IDE экспортируется в Java. В частности, Java для JUnit.

Команда Selenium IDE намерена поддерживать все официально поддерживаемые привязки языков программирования для Selenium (например, Java, JavaScript, C#, Python и Ruby) по крайней мере в одной среде тестирования для каждого языка.

Приветствуются материалы, помогающие добавлять новые языки и тестовые фреймворки для данного языка. См. Как внести свой вклад подробнее о том, как это сделать.

Java JUnit

Экспортированный код для Java JUnit создан для работы с Java 8, JUnit 4.12 и последней версией Selenium 3.

Вы должны иметь возможность взять экспортированный файл Java и поместить его в стандартную структуру каталогов Maven с pom.xml файл со списком этих зависимостей и запустите его.

Участие в экспорте кода для Selenium IDE

Экспорт кода был построен модульным способом, чтобы помочь включить вклады.

Каждый язык и тестовая среда будут иметь свой собственный пакет, содержащий экспортируемый код. Каждый фрагмент кода сопоставляется с командой в Selenium IDE, и каждый из этих пакетов полагается на базовый пакет “core”, который выполняет всю тяжелую работу.

Ниже приведены шаги по созданию пакета для нового языка или для новой тестовой среды в рамках уже установленного языка.

1. Создайте новый пакет

Сначала скопируйте существующий языковой пакет (например, packages/code-export-java-junit) и переименуйте его (например, папку и сведения в файле package.json) на целевой язык и фреймворк, которые вы хотели бы внести (например, packages/code-export-ruby-rspec и т.д.).

Затем добавьте новый пакет в качестве зависимости в package.json в code-export .

Наконец, запустите yarn из корня проекта.

2. Обновите локаторы и команды

Основной функцией экспорта кода является генерация строк, специфичных для конкретного языка. Наиболее заметными из них являются команды и стратегии поиска (например, синтаксис для поиска “по”).

Для данного языка существует файл для каждого из них вместе с сопровождающими тестовыми файлами.

Вы можете увидеть пример этого в github: packages/code-export-java-junit.

При объявлении новых команд вы можете либо указать их вывод в виде строки , либо в виде объекта , который задает уровни отступов ).

В code-export встроен улучшитель, который управляет отступом выводимого кода. Эта структура полезна, если вывод команды является подробным, и вы хотите быть явным. Или если команда изменяет уровень отступа команд, которые следуют за ней.

3. Создайте крючки

Крючки составляют большую часть структуры экспортируемого кода (например, набор, тест и все, что в него входит, например, настройка, демонтаж и т.д.). Они также позволяют плагинам экспортировать код в различные части теста или набора.

Есть 9 различных крючков:

  • в конце концов (после завершения всех тестов)
  • После каждого (после завершения каждого теста – до окончания)
  • перед всеми (до того, как будут выполнены все тесты)
  • beforeEach (перед выполнением каждого теста – после beforeAll)
  • команда (выдает код для новой команды, добавленной плагином)
  • зависимость (добавьте дополнительную языковую зависимость)
  • в каждом начале (в каждом тесте, в начале его)
  • в каждом конце (в каждом тесте, в конце его)
  • переменная (объявите новую переменную, которая будет использоваться во всем наборе)

Смотрите пример хуков, реализованных в packages/code-export-java-junit здесь: Крючки

4. Обновите атрибуты, зависящие от языка

На каждом языке вам нужно указать некоторые низкоуровневые сведения. Такие вещи, как количество пробелов для отступа, как объявить метод, тест, набор и т.д.

Пример того, как это реализовано в packages/code-export-java-junit, можно найти здесь: Параметры, зависящие от конкретного языка

5. Добавьте его в смесь

Как только у вас будет все остальное на месте, подключите его для использования в пользовательском интерфейсе.

Это возможно в packages/code-export/src/index.js .

Вам нужно будет:

  • Импортируйте свой новый код-экспортный пакет
  • Обновите доступные языки с подробной информацией о вашем языке экспорта кода
  • Обновите экспортер, чтобы ссылаться на ваш код – имя экспорта и импорт

6. Тестирование и настройка

Лучший сквозной тест для экспорта кода применяет серию тестов и проверяет, что они выполняются так, как вы ожидаете.

Из сборки разработки получите доступ к начальным тестам и убедитесь, что все команды стандартной библиотеки работают для вашего нового языка.

Тестируйте, исправляйте и тестируйте снова, пока не будете уверены в конечном результате.

7. Отправить PR-запрос

Ты сделал самую трудную часть. Теперь просто отправьте PR. Пожалуйста, сделайте это против ветки v3 .

Оригинальная версия этой статьи появляется на сайте документации Selenium IDE.

Страницы Selenium IDE

Applitools для страниц Selenium IDE

Видео Selenium IDE

Оригинал: “https://dev.to/michaelvisualai/code-export-in-selenium-ide-121d”