Testng-это структура автоматического тестирования с открытым исходным кодом, где «ng» Testng является следующим поколением. Он похож на Junit, но предназначен для того, чтобы быть лучше, чем Junit, особенно при тестировании интегрированных классов. С помощью простых аннотаций, группировки, секвенирования и параметризации TestNG преодолевает большинство ограничений более старой системы и дает разработчику возможность писать более универсальные и эффективные тесты.
В наших предыдущих блогах мы видели, как запускать тесты в Testng, используя XML -файл, параметризация в Testng, Testng слушателей и многое другое. В этом блоге мы узнаем, как сгенерировать отчет Testng в Дженкинсе. Это будет особенно полезно, если вы занимаетесь Автоматизация тестов селена .
Зачем использовать Testng в первую очередь?
Testng довольно популярен среди разработчиков и тестеров для создания тестов. Он предлагает несколько практических функций, таких как группировка, зависимость, приоритизация, простота использования нескольких аннотаций и т. Д. Если вы не фанат Testng, позвольте мне познакомить вас с несколькими из нескольких преимуществ, предлагаемых им, особенно из Селен перспектива-
- Он поддерживает аннотации.
- Он имеет гибкую конфигурацию теста, гарантируя, что код будет безопасным.
- Поддержка тестирования, управляемого данными (с @DataproVider).
- Поддержка параметров.
- Больше не нужно в тесте и сопровождает мощную модель выполнения.
- Поддерживает различные инструменты и плагины, которые включают Jenkins, Eclipse, Maven и т. Д.
- Встраивает Beanshell для дальнейшей гибкости.
- Он предназначен для покрытия тестов (почти все): модульные тесты, функциональные тесты, сквозные тесты, интеграционные тесты и т. Д.
- Он использует больше концепций и функций Java и OO.
Важность аннотаций теста
В первую очередь разработчики неоднократно используют аннотацию для определения части кода, который включен в программное обеспечение или бизнес -логику, используемой в Java языка программирования для управления потоком методов. В тесте следующего поколения (Testng) аннотации играют важную роль. При работе над Testng тестировщики должны рассмотреть операции и использование каждой аннотации.
Хотя аннотации отличаются от проекта к проекту в зависимости от их требований, поток выполнения остается нетронутым для каждого отдельного проекта. Ниже приведены различные аннотации, присутствующие в Testng, и их первичное использование:
- @Beforesuite: Аннотированный метод будет работать до того, как все тесты в этом наборе будут выполнены.
- @Aftersuite: Аннотированный метод будет работать после того, как все тесты в этом наборе будут выполнены.
- @Aftertest: Аннотированный метод будет работать после того, как все методы испытаний, принадлежащие классам внутри тега, работают.
- @BeforeTest: Аннотированный метод будет выполняться до того, как любой метод испытаний, принадлежащий классам внутри тега.
- @AfterGroups: Аннотированный метод представляет собой список групп, которые будет запущен метод конфигурации. Этот метод будет работать вскоре после вызова последнего метода испытаний, который принадлежит любой из этих групп.
- @BeforeGroups: Аннотированный метод представляет собой список групп, которые метод конфигурации будет работать ранее. Этот метод будет работать незадолго до вызова первого метода испытаний, который принадлежит любой из этих групп.
- @Afterclass: Аннотированный метод будет работать после выполнения всех текущих методов испытаний класса.
- @BeforeClass: Аннотированный метод будет выполняться до того, как будет вызовен первый метод испытаний в текущем классе.
- @AfTermethod: Аннотированный метод будет работать после запуска каждого метода испытаний.
- @Beforemethod: Аннотированный метод будет работать до запуска каждого метода испытаний.
- @test : Этот аннотированный метод является частью тестового примера.
Есть несколько преимуществ доступных аннотаций Testng-
- Посмотрев аннотации, он описывает методы, которые он заинтересован. Названия методов также не ограничиваются каким -либо шаблоном или форматом.
- Мы можем передать аннотации с дополнительными параметрами.
- Аннотации сильно напечатаны так, чтобы компилятор мог сразу пометить любые ошибки.
- Тестовые классы больше не нужны для расширений.
Написание базового теста в Testng
Теперь, когда у нас есть важные элементы, давайте посмотрим на основные шаги, связанные с созданием теста Testng.
- Напишите бизнес -логику теста.
- Вставьте аннотации Testng в код.
- Включите тестовую информацию (например, имена методов, имена классов, имена групп и т. Д.) В файле testng.xml.
- Запустите Testng.
Примечание: Testng требует JDK 8 или выше. Вы можете ссылаться на наш полный Testng Tutorial начать с оснований.
Ниже приведен прямой тест, записанный в Testng:
package example1; import org.testng.annotations.*; public class SimpleTest { @BeforeClass public void setUp() { // here would be the code that will be invoked when this test is instantiated } @Test(groups = { "fast" }) public void aFastTest() { System.out.println("Fast test executed"); } @Test(groups = { "slow" }) public void aSlowTest() { System.out.println("Slow test executed"); } }
Используя @beforeClass и @Test, то есть после того, как тестовый класс будет создан и перед запуском какого -либо метода испытаний будет вызван методом setup (). В этом примере мы будем быстро запустить группу, поэтому AfastTest () вызывается, в то время как Slowtest () пропускается.
Что следует отметить:
- Нет необходимости реализовать интерфейс или расширить класс.
- Несмотря на то, что в приведенном выше примере используются конвенции Junit, именно аннотации сообщают, как можно назвать нашими методами любого имени.
- Метод испытаний может принадлежать к одной или нескольким группам.
Мы можем либо вызвать наш тест, используя командную строку, задачу ANT (как показано ниже), или файл XML: после того, как вы собрали свой тестовый класс в каталог сборки.
Используйте муравей, чтобы вызвать его:
C:> ANT
BUILDFILE: BUILD.XML
Выход
Результаты теста можно просмотреть с помощью:
Start Testput \ index.html
( в окнах)
Если вам не нравится этот процесс получения результатов теста, есть более простой способ сделать это. Также возможно сгенерировать отчеты Testng в Дженкинсе. Есть плагин, предложенный Jenkins для выполнения этой задачи. Плагин — плагин Testng Results. В следующем разделе выяснится, как генерировать отчет Testng в Дженкинсе с этим плагином.
Вам также может понравиться- Генерировать отчет о покрытии Phpunit в HTML и XML
Плагин результатов теста
Плагин результатов Testng позволяет публиковать результаты TestNG, созданные с использованием org.testng.reporters. Xmlreporter. Testng Полученный XML -файл содержит больше информации, чем XML -файл Framework. В отчетах о графиках и таблицах этот плагин раскрывает такую дополнительную информацию. Плагин также позволяет импортировать отчеты XML Testng в Дженкинсе из каждой сборки.
Теперь добраться до «Как», как «Как генерировать отчет Testng в Дженкинсе», анализируется с использованием вывода, который org.testng.reporters. Xmlreporter генерирует. Результаты показаны с помощью графика трендов, и все специфики от неудачных тестов также представлены. И вот как выглядят отчеты Testng в Дженкинсе!
Давайте узнаем больше о отчете Jenkins Selenium.
Особенности плагина результатов Testng
Отчет Jenkins Selenium, сгенерированный с использованием плагина Testng Results, предлагает следующие функции-
- Планировка намеренно спроектирована так, что они очень похожи на плагин Jenkins’s Junit. Также известен тем фактом, что Джунит вдохновляет их.
- Вы увидите сводку пропущенных/сбоев проверяет и пройденные/методы конфигурации прохождения на вкладке «Проект/сборка». Чтобы увидеть сбой теста, это также заполняет неудачные тестовые случаи с прямым соединением.
- Методы испытаний на странице резюме результатов класса отделены от метода конфигурации.
- В резюме результата пакета мы видим порядок, в котором методы испытаний были выполнены во время регрессионного запуска.
- Пропуск/неудачный шаблон предыдущих результатов работы будет рассматриваться на разных графиках.
- Способен скрывать или расширять таблицы, которые отображают пакет и результаты класса.
Утилиты Testng Result Plagin
Использование этого плагина очень проста, как только вы настроили свою сборку для запуска тестовых случаев на основе тестов, и выяснить, как генерировать отчет TestNG в Дженкинсе. Просто запустите опубликовать Testng приводит к поведению после сборки.
Эта опция позволяет настроить следующие свойства:
- Testng xml отчет шаблон- Это шаблон для имени файла, который можно использовать для поиска файлов отчета Testng XML (например, */target/testng-results.xml *). Путь представляет собой либо шаблон стиля муравья (например, набор файлов), либо список файлов и папок, разделенных символами »;:, ‘. Также жизненно важно, чтобы TestNG была настроена на создание отчета XML Jenkins Selenium с использованием _org.testng.reporters. Это должно обеспечить должным образом Xmlreporter для этого плагина.
- Описание теста побега строка- При проверке, отображая результаты метода испытаний, плагин избегает строки описания, связанной с методом испытаний. Отсутствие проверки позволяет нам использовать теги HTML для форматирования описания, которое включено по умолчанию.
- Сообщения об исключении Escape- При проверке плагин избегает сообщений исключений метода испытаний. Unceecking позволяет вам использовать теги HTML для форматирования сообщения исключения, например, встроить ссылки в тексте. Это включено по умолчанию.
- Показывать Неудачные сборки- При выборе плагин включает в себя результаты неудачных сборки на графике трендов. Это отключено по умолчанию.
- В случае, если это сборка Maven, всегда лучше настроить шаг сборки с опцией. Это приводит к созданию сбоев теста, отмеченными как нестабильные, что отличает ее от сборки, которая не удалась из -за проблем, не связанных с тестами.
- Кроме того, даже если выбрана эта опция, неудачные сборки без результатов, а на графиках не отображаются сборы, а на графиках не будут отображаться.
- Маркировка сборки как сбой в неудачной конфигурации- Это отмечает сборку как неудачную, если есть какие -либо сбои метода конфигурации.
- Настройка порогов для маркировки сборки как нестабильная/неудачная- Пользовательский режим может быть настроен пользователем как несколько тестов или процент тестов, а затем настроен отдельно для этих значений. Даже если есть несколько сбоев теста или пометить сборку как неудачу, даже если есть единый сбой метода испытаний, это позволяет создавать ситуации, когда мы хотим, чтобы сборки были отмечены успешными.
Как генерировать отчеты Testng в Дженкинсе?
Теперь давайте посмотрим, как генерировать отчет Testng в Дженкинсе. Чтобы иметь возможность сделать это, вы должны иметь все необходимые инструменты в вашей системе.
Предпосылки-
- Проект Testng
- Дженкинс — Вы можете проверить установку Jenkins Здесь Анкет
- Плагин результатов теста в Дженкинсе
После того, как вы все это установили, мы можем начать работу с проектом Testng.
Как создать проект Testng?
Чтобы создать отчеты Testng в Дженкинсе, нам нужно начать с нуля. Во -первых, мы создадим проект Testng. Чтобы создать проект Testng, вам нужно будет выполнить шаги, упомянутые ниже-
Шаг 1: Откройте затмение и создайте класс Java.
Шаг 2: Держите все файлы библиотеки в папке.
Шаг 3: Напишите программу Java.
Приведенный ниже фрагмент выделяет все три шага, упомянутые выше.
Шаг 4: Теперь преобразуйте программу Java в Testng.
Альтернативный метод- Еще один способ создать проект Testng, — создать новый проект Testng все с самого начала.
Шаг 1: Нажмите Файл -> Новый -> Java Project
Шаг 2: Дайте ему произвольное название проекта, скажем, «FirstTestngProject», а затем нажмите Следующий Анкет
Шаг 3: Следующий шаг — начать импортировать библиотеки Testng в проект. Нажмите на вкладку « библиотеки» -> «Добавить библиотеку»
Шаг 4: Выберите «Testng» в диалоговом окне «Добавить библиотеку» и нажмите Следующий Анкет
Шаг 5: Нажмите на Заканчивать .
Следует отметить, что TestNG включен в список библиотек.
Шаг 6: Теперь будут добавлены файлы JAR, содержащие API Selenium. Эти файлы расположены в драйвере клиента Java, который мы загрузили с http://docs.seleniumhq.org/download/ Анкет
Затем перейдите к тому, где размещены файлы jar selenium.
После добавления внешних банок, экран должен появиться так.
Шаг 7: Нажмите «Закончить» и подтвердите, что наш первый тестирование виден в окне Eclipse Package Explorer.
После того, как у нас есть проект Testng, следующий шаг — установить Jenkins. Вы можете ссылаться на управляемые шаги для установки Jenkins в нашем Учебник Дженкинса Анкет
Теперь, когда у нас есть Testng Project и Platform Jenkins Platform, следующий шаг — установить плагин Testng Reports в Jenkins.
Установка плагина Testng Reports в Дженкинс
Следующий и самый важный шаг, чтобы узнать, как генерировать отчет Testng в Jenkins, — это установить плагин Testng Reports. Чтобы установить плагин в Дженкинс, следуйте этим шагам-
- Открыть Дженкинс (Localhost: 8080).
- Нажмите на ‘ Управление Дженкинсом ‘→ Нажмите на’ Управление плагинами ‘
- Нажмите на ‘ Доступно ‘Tab
- Выберите ‘ Плагин результатов Testng ‘
- Нажмите на ‘ Установить без перезапуска ‘
- Откройте ‘ TestngProject «Работа создана ранее.
- Нажмите на ‘ Настройка ‘И прокрутите вниз, чтобы выбрать’ После строительства действия ‘
- Нажмите на ‘ Добавить действия после сборки ‘ выпадающий список.
- И выберите ‘ Публикуйте результаты Testng ‘
- В Testng xml report pattern Редактировать поле Enter ‘ **/testng- Результаты.xml ‘И нажмите’ Сохранить ‘
- Мы уже создали новый проект ‘ TestngProject «Для запуска тестов Testng и генерировать отчеты TestNG после выполнения с использованием Jenkins.
- Нажмите на ‘ Строить сейчас ‘Кнопка, чтобы выполнить его. Это будет вызвать testng.xml из пакетного файла.
- Щелкните правой кнопкой мыши по номеру сборки и нажмите на вывод консоли, чтобы увидеть результат.
- Как только выполнение будет завершено, будет ссылка для просмотра «результатов Testng»
Там вы идете- вот как генерировать отчет Testng в Дженкинсе!
Альтернативный метод создания отчетов Testng в Дженкинсе
Есть еще один способ настроить отчеты Testng на приборной панели Дженкинса.
- Войдите в Дженкинс.
- Управляйте Jenkins и установите плагин Testng результатов.
- Пожалуйста, убедитесь, что вы перезапустили Дженкинс после установки плагина.
- Далее перейдите на домашнюю страницу Jenkins → Создайте новую работу Jenkins и в действии после сборки → публиковать результаты Testng.
- Теперь либо дайте полный путь вашего testng-result.xml или типа **/testng-results.xml в шаблоне отчета testng XML для поиска в рабочем пространстве проекта.
- Выполните свою работу в Дженкинсе, а теперь ваш отчет Jenkins Selenium или ‘ Испытания результатов ‘Было бы видно на вашей панели Дженкинса.
Как поделиться отчетами Testng в Дженкинсе?
В приведенных выше разделах мы увидели, как генерировать отчет Testng в отчете Jenkins или Jenkins Selenium, как некоторые любят их называть. После того, как вы сгенерировали эти отчеты Testng в Дженкинсе, что бы вы хотели с ними делать? Конечная цель создания отчета Jenkins Selenium — поделиться ими!
Существует возможность отправить эти уведомления по электронной почте непосредственно из Дженкинса вместе с сгенерированными отчетами. В этом разделе мы узнаем, как отправить по электронной почте сгенерированное Jenkins Selenium Report членам команды, руководителям или даже менеджерам.
Посмотрим, как мы можем сделать это-
- Начните файл ‘jenkins.war’, чтобы начать работу с Jenkins (при условии, что он уже установлен).
- Откройте Jenkins (
http://localhost: 8080
). - Нам понадобится требуемый набор плагинов, прежде чем мы запустим:
- Расширение электронной почты
- Плагин шаблона расширения электронной почты
- Испытания результатов
- Отчет Selenium HTML
- Конфигурация для отправки электронной почты
- Перейти к Jenkins -> Управление Jenkins -> Configure System -> Уведомление по электронной почте
- Введите идентификатор электронной почты в поле «Редактирование« SMTP ». Для, например, «smtp.gmail.com»
- Нажмите « Advanced » и настройте, как показано на изображении ниже.
- Имя пользователя и пароль должны быть предоставлены для учетной записи, откуда мы хотим отправить уведомление по электронной почте (вы можете использовать свою корпоративную электронную почту или личные в зависимости от ситуаций).
- Для целей тестирования всегда лучше проверить флажок «Конфигурация тестирования, отправив тестовый электронный флажок», чтобы подтвердить, была ли отправлена электронная почта успешно или нет.
- Введите адрес электронной почты получателя и нажмите кнопку «Конфигурация теста».
- Если мы видим сообщение «Электронная почта была успешно отправлена», то можно подтвердить, что конфигурация верна.
- Если мы видим какое -либо сообщение об ошибке, это может быть либо потому, что конфигурация неверна или проблемы с доступом к безопасности. Следуйте приведенным ниже шагам, чтобы включить «менее безопасный доступ приложений».
- Перейдите к https://myaccount.google.com/
- Нажмите на » Безопасность «
- Перейдите в раздел «Менее безопасный доступ к приложениям» и включите его.
Ура! Вы все готовы отправить уведомление по электронной почте для отчетов Testng в Jenkins !!
Теперь пришло время проверить это.
- Перейти на приборную панель Дженкинса
- Создайте новую работу.
- Давайте создадим новый проект под названием «VerifyEmailNotification».
Дайте описание проекта и выберите «Заполнить пакетную команду» из раскрывающегося списка сборки и введите любые недопустимые команды, как показано на изображении ниже, так как каждая нестабильная сборка получит электронное письмо. (Тогда только оповещения по электронной почте будут отправлены, если сборка сбой).
- Выберите «Уведомление по электронной почте» из «Действия после сборки» и добавьте адрес электронной почты получателя и проверьте »Отправьте электронное письмо для каждой нестабильной сборки», как показано на изображении ниже.
- Нажмите «Сохранить».
- Теперь нажмите «Построить сейчас», чтобы начать выполнение.
- Перейдите на «Консоль вывода», чтобы проверить результат.
- Проверьте почту получателя, чтобы подтвердить, было ли отправлено электронное письмо с Дженкинса.
Теперь, когда мы уверены, что наши уведомления по электронной почте работают, давайте настроим Jenkins для привлечения отчета Testng в электронном письме.
- Перейдите в Jenkins -> Управление Jenkins -> Configure System -> Расширенное уведомление по электронной почте
- Введите «smtp.gmail.com» в «SMTP -сервер». Здесь Gmail принимается как пример.
- Следующий , нажмите на «Advanced» и заполните детали, как показано ниже.
- Нажмите «Сохранить».
- Перейдите на Dankins Dashboard и создайте либо новый проект, либо вы можете выбрать существующий проект. Здесь у нас есть существующий проект [Бронирование полета (POM)]
- Нажмите «Настройка» с левой стороны.
- Выберите «Редактируемые уведомления по электронной почте» из «Действия после сборки»
- Нажмите на «расширенные настройки»
- Выберите «Всегда» в выпадении «Добавить триггер».
- Нажмите на «Advanced» и заполните детали, как показано ниже.
- Укажите путь по электронной почте-report.html testng в поле «Редактировать контент».
- Нажмите « Сохранить ». »
- Далее нажмите « Построить сейчас », чтобы запустить выполнение задания.
- Перейдите к « Консоль вывод », чтобы проверить результат.
- Проверить почту для получателя, чтобы увидеть отчет о выполнении теста.
И вот ты. Теперь вы готовы создать отчеты Testng в Jenkins и поделиться этими отчетами Jenkins Selenium!
Завершая
Я надеюсь, что этот блог помог вам принять поколение отчетов и поделиться на один шаг вперед. Теперь вы не только знаете, как генерировать отчет Testng в Дженкинсе, но и научились делиться этими отчетами Testng в Дженкинсе по электронной почте. Пришло время поднять функционирование Jenkins & Testng, отправив уведомление по электронной почте с помощью вашего самого следующего Jenkins Селен отчет. Дайте мне знать, как это происходит в разделе комментариев ниже.
Счастливого тестирования!
Оригинал: «https://dev.to/piyusha/how-to-generate-testng-reports-in-jenkins-572»