atesting.ru Автоматизация тестирования ПО,Блог Extent Reports Selenium Version 4 — Материалы для тестирования программного обеспечения

Extent Reports Selenium Version 4 — Материалы для тестирования программного обеспечения

Ранее мы публиковали «Как сгенерировать селен экстент-отчеты» и «Генерация экстент-отчетов селеном со снимками экрана». В этом посте вы узнаете, как «создавать отчеты экстентов версии 4 в Selenium». Отметьте это, если у вас возникли проблемы с Extent Reports версии 3.

 Extent Reports Selenium Version 4 & ndash; Материалы для тестирования программного обеспечения

Все мы знаем, что отчеты Extent — это продвинутый инструмент создания отчетов Selenium. Мы можем создавать красивые, интерактивные и подробные отчеты, используя фреймворк Extent. Мы можем добавить любую информацию (например, события, снимки экрана, теги, устройства, авторов или любую другую соответствующую информацию), которая важна для нас, чтобы создать информативный и потрясающий отчет.

Давайте двигаться вперед и рассмотрим шаг за шагом. пошаговое руководство по настройке отчетов экстентов версии 4 в сценариях Selenium WebDriver.

Шаги по созданию отчетов по экстентам Selenium:

  • Шаг 1. Во-первых , создайте проект TestNG в eclipse.
  • Шаг 2: Теперь загрузите файл JAR версии 4 отчетов Extent или для получения зависимости Extent Reports Maven 4.06 — Загрузите отчеты Extent
  • Шаг 3. Добавьте загруженные файлы библиотеки (файл Jar) в свой проект или добавьте зависимость Maven отчетов об экстентах.

Вот отчеты о зависимости maven версии 4.0.6

123456 & lt;! — https://mvnrepository.com/artifact/com.aventstack/extentreports — & gt; & lt; dependency & gt; & lt; groupId & gt; com.aventstack & lt;/groupId & gt; & lt; artifactId & gt; extensionreports & lt;/artifactId & gt; & lt; version & gt; 4.0.6 & lt;/version & gt; & lt;/dependency & gt;
  • Шаг 4 : Создайте класс Java, скажем ExtentReportsClass, и добавьте к нему следующий код

Давайте проверим заголовок и логотип на главной странице Google.

<Тр класс = "карандаш-строка">
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 package myExtentReport; import java.io.File; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import org.apache.commons.io.FileUtils; import org.openqa.selenium. *; import org .openqa.selenium.chrome.ChromeDriver; import org.testng.Assert; import org.testng.ITestResult; import org.testng.annotations. *; import com.aventstack.extentreports.ExtentReports; import com.aventstack.extentreports.ExtentTest; import com.aventstack.extentreports.Status; import com.aventstack.extentreports.markuputils.ExtentColor; import com.aventstack.extentreports.markuputils.MarkupHelper; import com.aventstack.extentreports.reporter.ExtentHtmlReporter.extent.com.avent .configurationTheme; открытый класс ExtentReportsClass {общедоступный драйвер WebDriver; общедоступный ExtentHtmlReporter htmlReporter; общедоступный экстент ExtentReports; общедоступный регистратор ExtentTest; @BeforeTest public void startReport () {htmlReporter = new ExtentHtmlReporter (System.getProperty (& # 34; user.dir & # 34;) + & # 34; /test-output/STMExtentReport.html"); //Создаем объект Extent Reports extension = new ExtentReports (); extension.attachReporter (htmlReporter); extension.setSystemInfo (& # 34; Имя хоста & # 34 ;, & # 34; SoftwareTestingMaterial & # 34;); extension.setSystemInfo (& # 34; Среда & # 34;, & # 34; Производство & # 34;); extension.setSystemInfo (& # 34; Имя пользователя & # 34;, & # 34; Раджкумар С.М. & # 34;); htmlReporter.config (). setDocumentTitle (& # 34; Название отчета находится здесь & # 34;); //Имя отчета htmlReporter.config (). SetReportName (& # 34; Имя отчета здесь & # 34;); //Темная тема htmlReporter.config (). SetTheme (Theme.STANDARD); } //Этот метод заключается в том, чтобы сделать снимок экрана и вернуть путь к снимку экрана. общедоступная статическая строка getScreenShot (драйвер WebDriver, String screenshotName) выдает исключение IOException {String dateName = new SimpleDateFormat (& # 34; yyyyMMddhhmmss & # 34;). format (new Date ()); TakesScreenshot ts = (TakesScreenshot) драйвер; Источник файла = ts.getScreenshotAs (OutputType.FILE); //после выполнения вы могли увидеть папку & # 34; FailedTestsScreenshots & # 34; в папке src String destination = System.getProperty (& # 34; user.dir & # 34;) + & # 34;/Screenshots/& # 34; + screenshotName + dateName + & # 34; .png & # 34 ;; Файл finalDestination = новый файл (место назначения); FileUtils.copyFile (источник, finalDestination); место возврата; } @BeforeMethod public void setup () {System.setProperty (& # 34; webdriver.chrome.driver & # 34; & # 34; C: //AutomationFramework//Drivers//chromedriver.exe"); драйвер = новый ChromeDriver (); driver.manage (). window (). maximize (); driver.get (& # 34; https: //www.google.com/"); } @Test public void verifyTitle () {logger = extension.createTest (& # 34; Чтобы проверить заголовок Google & # 34;); Assert.assertEquals (driver.getTitle (), & # 34; Google & # 34;); } @Test public void verifyLogo () {logger = extension.createTest (& # 34; Чтобы проверить логотип Google & # 34;); логическое img = driver.findElement (By.xpath (& # 34; //img [@id = & # 39; hplogo & # 39;] & # 34;)). isDisplayed (); logger.createNode (& # 34; Изображение присутствует & # 34;); Assert.assertTrue (img); logger.createNode (& # 34; Изображение отсутствует & # 34;); Assert.assertFalse (img); } @AfterMethod public void getResult (результат ITestResult) выдает исключение {if (result.getStatus () == ITestResult.FAILURE) {//MarkupHelper используется для отображения вывода разными цветами logger.log (Status.FAIL, MarkupHelper.createLabel (result.getName () + & # 34; — Test Case Failed & # 34 ;, ExtentColor.RED)); logger.log (Status.FAIL, MarkupHelper.createLabel (result.getThrowable () + & # 34; — Test Case Failed & # 34 ;, ExtentColor.RED)); //Чтобы записать путь к снимку экрана и сохранить путь к снимку экрана в строке & # 34; screenshotPath & # 34; //Мы передаем путь, полученный этим методом, в отчеты об экстентах, используя & # 34; logger.addScreenCapture & # 34; метод. //Строка Scrnshot = TakeScreenshot.captuerScreenshot (драйвер, & # 34; TestCaseFailed & # 34;); String screenshotPath = getScreenShot (driver, result.getName ()); //Чтобы добавить его в отчет об экстенте logger.fail (& # 34; Снимок с ошибкой тестового примера находится ниже & # 34; + logger.addScreenCaptureFromPath (screenshotPath)); } else if (result.getStatus () == ITestResult.SKIP) {logger.log (Status.SKIP, MarkupHelper.createLabel (result.getName () + & # 34; — Контрольный пример пропущен & # 34 ;, ExtentColor.ORANGE) ); } else if (result.getStatus () == ITestResult.SUCCESS) {logger.log (Status.PASS, MarkupHelper.createLabel (result.getName () + & # 34; Test Case PASSED & # 34 ;, ExtentColor.GREEN)) ; } driver.quit (); } @AfterTest public void endReport () {extension.flush (); }}

extension-config.xml:

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 & lt;? xml version = & # 34; 1.0 & # 34; кодировка = & # 34; UTF-8 & # 34;? & gt; & lt; extensionreports & gt; & lt; конфигурация & gt; & lt;! — тема отчета — & gt; & lt;! — стандартный, темный — & gt; & lt; theme & gt; стандартный & lt;/theme & gt; & lt;! — кодировка документа — & gt; & lt;! — по умолчанию используется UTF-8 — & gt; & lt; кодировка & gt; UTF-8 & lt;/encoding & gt; & lt;! — протокол для скриптов и таблиц стилей — & gt; & lt;! — по умолчанию https — & gt; & lt; протокол & gt; https & lt;/protocol & gt; & lt;! — заголовок документа — & gt; & lt; documentTitle & gt; ExtentReports 2.0 & lt;/documentTitle & gt; & lt;! — название отчета — отображается сверху — & gt; & lt; reportName & gt; & lt;/reportName & gt; & lt;! — заголовок отчета — отображается вверху, после заголовка отчета — & gt; & lt; reportHeadline & gt; Отчет об автоматизации & lt;/reportHeadline & gt; & lt;! — глобальное переопределение формата даты — & gt; & lt;! — по умолчанию гггг-ММ-дд — & gt; & lt; dateFormat & gt; гггг-ММ-дд & lt;/dateFormat & gt; & lt;! — переопределение глобального формата времени — & gt; & lt;! — по умолчанию ЧЧ: мм: сс — & gt; & lt; timeFormat & gt; ЧЧ: мм: сс & lt;/timeFormat & gt; & lt;! — собственный JavaScript — & gt; & lt; скрипты & gt; & lt;! [CDATA [$ (документ) .ready (функция () {}); ]] & gt; & lt;/scripts & gt; & lt;! — пользовательские стили — & gt; & lt; стили & gt; & lt;! [CDATA []] & gt; & lt;/styles & gt; & lt;/configuration & gt; & lt;/extensionreports & gt;

Используя этот внешний XML-файл (extension-config.xml), мы можем изменить такие детали, как тема отчета (стандартная или темная), заголовок отчета, заголовок документа и т. Д.,

Вывод в консоль :

1234 ================================ =============== Набор по умолчанию Общее количество выполненных тестов: 2, отказов: 1, пропусков: 0 ===================== ==========================

Обновите проект после выполнения указанного выше файла ExtentReportsClass.java. Вы можете найти HTML-файл с именем «STMExtentReport.html» в папке с тестовыми выводами. Скопируйте расположение файла STMExtentReport.html и откройте его в любом браузере. Вы можете увидеть красивые отчеты в формате HTML с высоким разрешением, как показано ниже.

Тестовый пример не прошел:

 Extent Reports Selenium Version 4 & ndash; Материалы для тестирования программного обеспечения

Тестовый пример пройден:

Extent Reports Selenium Version 4 & ndash ; Материалы для тестирования программного обеспечения

Панель инструментов:

 Extent Reports Selenium Version 4 & ndash; Материал для тестирования программного обеспечения

Сообщения с популярными вопросами об интервью:

  • Вопросы на собеседовании по Selenium
  • Вопросы на собеседовании TestNG
  • Вопросы на собеседовании Protractor
  • Вопросы на собеседовании по Automation Framework
  • Как объяснить Selenium Framework в интервью
  • Где вы применили концепцию ООП в Selenium Framework
  • Вопросы на собеседовании по Java
  • Вопросы на собеседовании по тестированию API
  • < li> Вопросы для собеседования по Agile

  • Вопросы для собеседования по SQL
  • Вопросы для собеседования по тестированию программного обеспечения
  • Вопросы для собеседования JIRA
  • Расскажите мне о себе Вопрос для собеседования
  • Вопрос на собеседовании о ваших сильных сторонах
  • Вопрос на собеседовании о ваших слабых сторонах

Я подобрал для вас несколько других интересных сообщений.

  • Почему драйвер WebDriver = новый FirefoxDriver ();
  • Архитектура Selenium WebDriver — подробное сообщение
  • Непрерывная интеграция Selenium — подробное сообщение
  • Тестирование файлов cookie — Полное руководство.
  • Изучите тестирование API за 10 минут.