atesting.ru Блог TestProject Open SDK для Java

TestProject Open SDK для Java

TestProject Open SDK для Java

Введение в TestProject Java SDK

TestProject — это бесплатный инструмент автоматизации, который обещает обеспечить безболезненную автоматизацию. Он имеет функцию записи и воспроизведения, связанную с SDK разработчика. Он также имеет возможность создавать и использовать надстройки по мере необходимости. Он основан на инструментах автоматизации, таких как Appium и Selenium.

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

TestProject имеет хорошую поддержку сообщества, где мы можем обсудить и найти ответы на наши вопросы. Некоторые из функций TestProject перечислены ниже:

Простота запуска автоматизации

Функции записи и воспроизведения TestProject позволяют запускать автоматизацию даже с минимальными затратами. кодирование знаний. Недавно они также добавили в свой рекордер возможности самовосстановления на основе искусственного интеллекта, что сделало создание тестов безупречным даже для самых сложных приложений (таких как Salesforce).

Поддерживает командную работу.

Совместное использование тестовых примеров и сценариев между членами команды в TestProject несложно и легко.

Гибкость

< p> TestProject автоматически предоставляет библиотеку ресурсов. Эти дополнения можно импровизировать, а также можно создавать новые, чтобы упростить нашу работу.

Поддерживает несколько браузеров и платформ

TestProject может тестировать на любой платформе, такой как Linux, Windows или Mac, и даже на Docker. Он поддерживает тестирование мобильных приложений как на iOS, так и на Android. Кроме того, он поддерживает большинство браузеров, таких как Chrome, Firefox и т. Д.

Стабильная технология

TestProject основан на Appium и Selenium, которые эффективны и проверенная технология в области автоматизации.

Не нужно покупать лицензию

TestProject со всеми его функциями на 100% бесплатен и не требует коммерческая лицензия.

Помимо вышеперечисленных функций, TestProject имеет некоторые уникальные характеристики, перечисленные ниже:

  • TestProject дает возможность расширить структуру за счет использования надстроек, совместно используемых другими пользователями платформы.
  • < li> TestProject — это первая среда автоматизации SaaS, созданная для гибкой структуры команды. Кроме того, это абсолютно бесплатно.

  • TestProject поощряет командное сотрудничество в отношении создания и совместного использования надежной среды автоматизации.
  • Готовые автоматические отчеты об испытаниях и информационные панели в формате HTML/PDF (включая снимки экрана).

TestProject не требует сильных технических знаний и ноу-хау в области программирования для начала, поскольку он имеет отличные встроенные возможности записи. Но для тех, кто любит кодировать, вы также можете найти их SDK для разработчиков на базе Selenium и Appium для Java, Python и C #. В этом руководстве мы сосредоточимся на Java OpenSDK.

Этапы установки

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

 TestProject Open SDK для Java

Нажмите кнопку» Бесплатная регистрация «. Теперь нам нужно предоставить такие данные, как имя, почтовый адрес, пароль, и согласиться с условиями и, наконец, снова нажать кнопку Зарегистрироваться .

TestProject Open SDK для Java

После создания учетной записи с помощью TestProject нам нужно выполнить еще несколько шагов для завершения процесса установки. Нам нужно войти на сайт TestProject и перейти на вкладку Агенты , которая находится в верхней части экрана, а затем выбрать операционную систему, в которой мы хотим завершить установку.

TestProject Open SDK для Java

Далее нам нужно скачать исполняемый файл агента. После завершения загрузки мы можем установить агент TestProject на нашем компьютере. Затем мы должны убедиться, что агент TestProject запущен и работает на нашем компьютере.

Запустить агент TestProject

На платформе Windows простой метод запуска агента TestProject — поиск TestProject в строке поиска Windows. Как только агент отобразится, нам нужно щелкнуть по нему. Это вызовет запуск агента, и статус будет отображаться при щелчке правой кнопкой мыши по значку на панели задач.

 TestProject Open SDK для Java

Регистрация агента TestProject

Убедившись, что агент работает без проблем, нам нужно перейти на домашнюю страницу TestProject и щелкнуть меню Агенты , а затем выбрать ссылку РЕГИСТРАЦИЯ АГЕНТА .

TestProject Open SDK для Java »/> </p>
</p>
<p>Появится всплывающее окно, в котором нам нужно дать агенту псевдоним. Нам нужно указать соответствующее имя, поскольку в будущем нам может потребоваться поделиться агентом между членами команды. Наконец, нам нужно нажать кнопку <strong> Зарегистрироваться </strong>. Это зарегистрирует наш агент в приложении TestProject, и мы все настроены, чтобы начать с TestProject. </p>
<p> Для начала у нас должен быть установлен Java Development Kit (JDK) версии 11 в нашей системе и получить комплект разработчика со страницы SDK/интеграции. </p>
<h3> <strong> Установка в проекте Maven </strong> </h3>
<p> Для проекта, встроенного в Maven, файл pom.xml должен содержать приведенный ниже код: </p>
<p><textarea wrap = & lt; dependency & gt; & lt; groupId & gt; io.testproject & lt;/groupId & gt; & lt; artifactId & gt; java-sdk & lt;/artifactId & gt; & lt; версия & gt; 0.63.4-ВЫПУСК & lt;/version & gt; & lt; классификатор & gt; источники & lt;/classifier & gt; & lt;/dependency & gt;

123456 & lt; dependency & gt; & lt; groupId & gt; io.testproject & lt;/groupId & gt; & lt; artifactId & gt; java-sdk & lt;/artifactId & gt; & lt; version & gt; 0.63.4-RELEASE & lt;/version & gt; & lt; classifier & gt; sources & lt;/classifier & gt; & lt;/dependency & gt;

Установка в проекте Gradle

Для проект, встроенный в Gradle, build.gradle должен содержать следующий код:

1 реализация & # 39; io.testproject: java-sdk: 0.63.4-RELEASE & # 39;

< h2> Как создать тест Selenium на основе TestProject

Реализация драйвера TestProject похожа на драйвер Selenium. В основном они отличаются операторами импорта. Сообщите нам, как настроить версию ChromeDriver для TestProject.

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

Чтобы принять разработчика, перейдите по следующей ссылке:

https://app.testproject.io/#/integrations/sdk

 TestProject Open SDK для Java

Выберите SDK [Java/C # или Python], а затем нажмите ссылку Показать токен внутри поля Получить токен разработчика.

123456789101112131415161718192021 import io.testproject.sdk.drivers.web.ChromeDriver; import org.openqa.selenium.By; import org.openqa.selenium.chrome.ChromeOptions; public final class TestProj {public static void main (String [] args) выдает исключение {Драйвер ChromeDriver = новый ChromeDriver (& # 34; YOUR_DEV_TOKEN & # 34 ;, новый ChromeOptions ()); driver.navigate () .to (& # 34; https: //www.softwaretestingmaterial.com"); //идентифицируем элемент и вводим текст в это поле driver.findElement (By.cssSelector (& # 34; # имя-поля-формы & # 34;)). sendKeys (& # 34; P & # 34;); //проверяем, что поле редактирования электронной почты отображается //Thread.sleep(20000); логическое r = driver.findElement (By.id (& # 34; поле-формы-электронная почта & # 34;)). isDisplayed (); //проверка условия выполнения тестового примера if (r) {System.out.println (& # 34; Тестовый пример прошел & # 34;); } else {System.out.println (& # 34; Тестовый пример не прошел & # 34;); } Driver.quit (); }}

TestProject SDK заменяет обычные драйверы Selenium/Appium расширенными функциями. Давайте посмотрим на структуру пакета со всеми драйверами, которые поддерживаются TestProject SDK.

 TestProject Open SDK для Java

Драйверы TestProject SDK поддерживают веб-платформы, платформы Android и iOS. Для Интернета список драйверов, доступных в TestProject, приведен ниже:

  • EdgeDriver
  • ChromeDriver
  • InternetExplorerDriver
  • < li> SafariDriver

  • FirefoxDriver
  • RemoteWebDriver

Для Android драйвер, доступный в TestProject:

  • AndroidDriver

Для iOS драйвер, доступный в TestProject:

  • IOSDriver

< h2> Пошаговое руководство по отчетам о тестировании

Отчеты доступны на главной странице TestProject и находятся в верхней части экрана в меню Отчеты . Их можно скачать и отправить по электронной почте другим заинтересованным сторонам в команде и высшему руководству. Создание отчета — важная функция, поскольку она помогает сделать вывод о качестве приложения, а также для отладки.

TestProject Open SDK для Java

Отчеты, которые запускаются в TestProject по отдельности, описаны ниже:

 TestProject Open SDK для Java

Источник изображения: < /em>https://docs.testproject.io/reports/individual-run-reports

Отчет содержит все подробности, включая дату, время, продолжительность выполнения теста, количество выполненных тестов и процент пройденных, неудачных, пропущенных, приостановленных, ошибок.

Вы также можете экспортировать этот отчет в формате PDF .

Автоматическое создание отчетов о тестировании

По умолчанию отчеты о тестировании создаются, когда тест завершается или сеанс драйвера перестает быть активным. Эти характеристики по умолчанию можно изменить, отключив функцию отчетов в TestProject.

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

Все платформы модульного тестирования пронумерованы путем включения независимого теста в отчет для всех аннотированных методов.

Маркер разработчика должен использовать SDK, либо настроив его как переменную среды, либо сохранив в конструкторе драйвера.

Реализация кода в JUnit, которая должна создавать три теста в отчетах.

123456789101112131415161718 открытый класс JUnitTest {частный драйвер ChromeDriver; @BeforeEach void beforeTestScenario (TestInfo testInfo) выдает исключение {driver = new ChromeDriver (new ChromeOptions ()); driver.report (). step (& # 34; Перед сценарием тестирования: & # 34; + testInfo.getDisplayName ()); } @Test @DisplayName (value = & # 34; SoftwareTestingMaterial & # 34;) void testApplication () {driver.navigate () .to (& # 34; https: //www.softwaretestingmaterial.com/"); } @AfterEach void afterTestScenario (TestInfo testInfo) {driver.report (). Step (& # 34; После тестового сценария: & # 34; + testInfo.getDisplayName ()); driver.quit (); }}

 TestProject Open SDK для Java

Выше показано создание отчета по умолчанию из кода JUnit.

Создание отчетов о тестировании вручную

Чтобы создавать отчеты о тестировании вручную, нам нужно использовать метод driver.report () .tests () и его перегруженные методы. Кроме того, обязательно отключить автоматические отчеты, если мы хотим создать отчет вручную, чтобы избежать конфликта. Мы должны добавить приведенный ниже код для ручного отчета.

< td class = "crayon-nums" data-settings = "show"> 12
Драйвер ChromeDriver = новый ChromeDriver (new ChromeOptions ()); driver.report () .test (& # 34; Test & # 34;). Submit ();

Объект ClosableTestReport возвращается из метод driver.report () .test () . Для отправки отчета требуется прямой вызов метода submit ().

Давайте посмотрим на пример, в котором закрываемый объект используется в сценарии, в котором возникает исключение из-за того, что элемент недоступен в DOM [отсутствие веб-элемента с идентификатором lnk в DOM] . Тестовый пример завершается неудачно, но до того, как закрываемый объект будет закрыт и будет опубликован результат теста.

1234 ChromeDriver d = new ChromeDriver (new ChromeOptions ()); try (ClosableTestReport r = d.report () .test (& # 34; Test & # 34;)) {d.findElement (By.cssSelector (& # 34; # lnk & # 34;)). Click ();}

Шаги теста

Шаги теста сообщается по умолчанию при запуске команд драйвера. Эту функцию можно отключить, или, кроме того, можно создавать отчеты вручную. Например,

12 Драйвер ChromeDriver = новый ChromeDriver (новый ChromeOptions ()); driver.report () .step (& # 34; Платеж успешно выполнен & # 34;);

Отчеты отключены

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

Чтобы отключить все отчеты, необходимо добавить приведенный ниже код. Мы должны передать истинное значение методу disableReports () .

12 ChromeDriver drv = new ChromeDriver (new ChromeOptions ()); drv.report () .disableReports (true);

Чтобы отключить тест с автоматическим отчетом, необходимо добавить приведенный ниже код. Каждый шаг теста будет в одном отчете. Этого не произойдет только в том случае, если отчет о тестировании вручную создается с помощью driver.report () .tests () . Мы должны передать истинное значение методу disableTestAutoReports () .

12 ChromeDriver drv = new ChromeDriver (new ChromeOptions ()); drv.report () .disableTestAutoReports (true);

Чтобы отключить отчеты о командах драйвера, необходимо добавить приведенный ниже код. В отчете не будет доступных шагов. Этого не произойдет только в том случае, если отчет о тестировании вручную создается с помощью driver.report () .step () . Мы должны передать истинное значение методу disableCommandReports () .

12 ChromeDriver drv = new ChromeDriver (new ChromeOptions ()); drv.report () .disableCommandReports (true);

При создании отчетов о командах драйвера SDK редактирует важные данные, которые передаются через защищенный элемент. В основном это наблюдается либо с элементом, имеющим Атрибут type установлен на пароль в HTML или с XCUITest на платформе iOS в элементе с типом XCUIElementTypeSecureTextField .

Значения, доставленные в эти элементы представлены тремя звездочками (***). Эту функцию можно отключить, добавив приведенный ниже код. Мы должны передать истинное значение методу disableRedaction () .

12 ChromeDriver drv = new ChromeDriver (new ChromeOptions ()); drv.report () .disableRedaction (true);

Как создавать тесты Appium на основе TestProject

Давайте создадим простой автоматизированный тестовый пример Appium для Android. Прежде всего, мы должны получить все возможности драйвера Android, необходимые для тестируемого устройства и тестируемого приложения. Эти возможности запускают драйвер Android, который вызывает несколько действий Appium в мобильных приложениях.

Для работы с различными действиями Appium должен иметь возможность идентифицировать элементы с помощью любых доступных локаторов, таких как идентификатор, класс, селектор CSS и т. Д. [By.id/By.cssSelector].

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

Реализация кода с помощью Appium в TestProject.

123456789101112131415161718192021222324252627282930313233 import io.appium.java_client.MobileElement; import io.appium.java_client.remote.MobileCapabilityType; import io.appium.java_client.remote.MobilePlatform; import io.testproject.sdk.drivers.android.Android.se.Driver; .By; импорт org.openqa.selenium.remote.DesiredCapabilities; импорт java.util.concurrent.TimeUnit; общедоступный конечный класс AppiumTest {общедоступный статический конечный int TIMEOUT = 5; public static void main (final String [] args) выдает исключение {DesiredCapabilities features = new DesiredCapabilities (); возможности.setCapability (MobileCapabilityType.PLATFORM_NAME, MobilePlatform.ANDROID); features.setCapability (MobileCapabilityType.UDID, & # 34; ВАШЕ_УСТРОЙСТВО_UDID & # 34;); features.setCapability (MobileCapabilityType.APP, & # 34; https: //github.com/testproject-io/android-demo-app/raw/master/APK/testproject-demo-app.apk"); AndroidDriver & lt; MobileElement & gt; драйвер = новый AndroidDriver & lt; & gt; (возможности); driver.manage (). timeouts (). implicitlyWait (TIMEOUT, TimeUnit.SECONDS); //Сбросить приложение driver.resetApp (); //Войдите, используя предоставленные учетные данные driver.findElement (By.id (& # 34; name & # 34;)). SendKeys (& # 34; John Smith & # 34;); driver.findElement (By.id (& # 34; пароль & # 34;)). sendKeys (& # 34; 12345 & # 34;); driver.findElement (By.id (& # 34; логин & # 34;)). click (); driver.quit (); }}

Заключение

В этой статье мы подробно обсудили TestProject, его особенности и то, что делает его таким важным. Мы увидели подробные шаги по установке и настройке в нашей локальной системе.

Мы создали базовые тесты с Selenium и Appium в TestProject. Кроме того, мы изучили отчеты TestProject и изучили различные конфигурации для отключения отчетов.

TestProject Java SDK может помочь вам улучшить существующие тесты на основе Selenium и Appium. Он также доступен на Python и C #. Он поддерживает кроссплатформенность (Linux, Windows или Mac и даже Docker).

С TestProject SDK вы можете сэкономить не только время, но и получить такие преимущества, как красивая панель инструментов, которая поможет вам глубоко погрузиться в каждый тест отчеты по пошаговым и автоматическим тестам в форматах HTML и PDF, которые помогут вам просматривать сообщения об ошибках, снимки экрана, неудачные шаги и т. д.

Лучше всего это на 100% бесплатно.

< p> Зачем ждать? Закатайте рукава и приступайте к изучению TestProject.

Поделитесь своим опытом работы с TestProject Java SDK в комментариях ниже.

TAG: qa