Фреймворк Galen – это автоматизация тестирования фреймворк, который изначально был представлен для выполнения кроссбраузерного тестирования макета веб-приложения в браузере. В настоящее время он превратился в полнофункциональную платформу тестирования с богатой системой отчетности и управления тестированием . Этот фреймворк поддерживает как Java, так и Javascript .
Вам интересно, что такое кроссбраузерное тестирование макета ? Хорошо, позвольте мне уточнить, итак, вы разрабатываете быстро функционирующий веб-сайт с помощью Google Chrome. Все работает в соответствии с предназначенной для вас функциональностью. Пользовательский интерфейс аккуратен, и вы испытываете чувство выполненного долга. Теперь вы показываете это своему менеджеру по продуктам, заинтересованной стороне или любому другому пользователю, у которого в браузере по умолчанию установлен Mozilla Firefox/Safari/Opera или любой другой браузер, кроме Google Chrome, и вы с удивлением замечаете отклонения в пользовательском интерфейсе при отображении веб-сайта. Это означает, что ваш веб-сайт не совместим с кроссбраузерными браузерами так как он работает резко при доступе через разные браузеры. Практика обеспечения того, чтобы макет веб-сайта выглядел и работал плавно в различных браузерах, называется кроссбраузерным тестированием макета. Мы живем в эпоху, когда адаптивный дизайн становится необходимостью для каждого веб-сайта. Если вы хотите решить следующие задачи для адаптивной верстки сайта на нескольких устройствах, например, мобильных, настольных и т.д., То Galen Framework – одна из лучших платформ с открытым исходным кодом для выбора:
- Правильно ли выровнен ваш текст?
- Правильно ли выровнен логотип на верхней левой панели?
- Правильны ли ширина и высота текстового поля или любого другого размера объекта пользовательского интерфейса?
- Умеете ли вы играть с цветовой гаммой?
- Все графические интерфейсы отображаются соответствующим образом в разных браузерах на разных устройствах
В этой статье мы рассмотрим, как настроить среду автоматизации тестирования для Galen Framework с помощью IntelliJ, а затем продолжим работу со сценарием. Я также хотел бы показать вам, как создавать отчеты для ваших тестовых примеров автоматизации , а также несколько советов по устранению неполадок, которые помогут вам начать работу с автоматизацией браузера с помощью Galen Framework для тестирования кросс-браузерной компоновки. Давайте сразу нырнем внутрь.
Шаг 1: Настройка среды:
Единственным необходимым предварительным условием будет установка JDK 8 на вашем компьютере. Для установки JDK 8 (минимальная версия JDK) посетите официальный веб-сайт для загрузки, нажав здесь .
После загрузки установка проста, просто нажмите и продолжайте, чтобы завершить. Как только установка будет завершена, вам необходимо будет указать путь настройки. Вот как вы можете это сделать! Перейдите к кнопке Windows и найдите “Переменные среды”. Как только это будет сделано, вам нужно выбрать опцию “Редактировать системные переменные среды”. После этого нажмите на кнопку “Создать”, чтобы добавить “JAVA_HOME” в качестве пути установки.
После этого найдите “Путь” в разделе “переменная” и дважды щелкните. В значении переменной добавьте ” %JAVA_HOME%\bin” в путь, чтобы убедиться, что указанная версия java доступна на компьютере.
Теперь, чтобы проверить, правильно ли установлен JDK или нет! Укажите следующую команду в своем cmd (командной строке): java-версия
Слава! Вы только что успешно установили JDK на свой компьютер.
Шаг 2 – Загрузите IntelliJ и настройте проект Maven
IntelliJ – это бесплатная Java IDE с открытым исходным кодом (Интегрированная среда разработки) для разработки компьютерного программного обеспечения на базе Java. Вы можете скачать версию IntelliJ для сообщества здесь.
После загрузки установка проста, просто нажмите “Далее” и завершите со значением по умолчанию. В Windows -> Поиск “IntelliJ”-> Откроется окно “Создать новый проект”. Нажмите “Создать новый проект”, выберите Maven и нажмите кнопку “Далее”. Введите идентификатор группы, идентификатор артефакта, оставьте версию по умолчанию и нажмите кнопку “Далее”. Оставьте название проекта и выберите местоположение, в котором будет расположен ваш проект. Нажмите на кнопку “Готово”, и созданный проект отобразится в IntelliJ, как показано на снимке ниже. Пожалуйста, обязательно включите автоматический импорт.
Добавьте зависимость Maven в IntelliJ, выполнив следующие действия Перейдите в репозиторий Maven https://mvnrepository.com/ и найдите фреймворк Галена.
Выберите последнюю версию платформы Galen с поддержкой Java Test Framework.
Выберите последнюю версию, которая указана вверху, и скопируйте зависимость Galen Framework, которая выделена на снимке ниже.
Скопируйте вышеуказанную зависимость Maven в pom.xml в вашем проекте. После копирования его зависимости и временные зависимости загружаются из репозитория Maven. Например. , Зависимость, такая как фреймворк Galen, и временные зависимости, такие как Selenium, наряду с некоторыми распространенными библиотеками.
org.testng testng 6.9.10 test
И структура проекта maven выглядит следующим образом: снимок ниже.
Шаг 3: Внедрение файла спецификации
Понимание того, как написать файл спецификации : Язык спецификации Galen является довольно гибким и дает вам возможность выразить точный способ, которым вы хотели бы, чтобы ваш веб-сайт вел себя при доступе с разных устройств. Файл спецификации страницы состоит из двух основных частей: Определения объектов и Спецификации объектов.
Этот файл спецификации важен и является предпосылкой для запуска вашей автоматизации на основе определения, добавленного в качестве ожидаемого результата, который выполняется и сравнивает фактический результат в вашем приложении.
Позвольте мне написать простой файл спецификации для веб-сайта https://www.lambdatest.com/
Для создания файла спецификации расширение должно быть “.spec”
Вышеуказанные файлы спецификаций и их изображение копируются в каталог спецификаций в папке ресурсов.
Примечание: Файл спецификации будет определять, присутствует ли изображение в том же каталоге. Если нет, то вам придется явно указать имя папки/файла изображения. Однако имейте в виду, что подпапка должна находиться там, где существуют ваши файлы спецификаций.
Приведенная выше спецификация предназначена только для выполнения пробного теста. Для более подробного ознакомления, пожалуйста, посетите сайт и поиграйте с другими примерами: Для более подробного ознакомления, пожалуйста, посетите сайт и поиграйте с другими примерами:
Шаг 4: Написание кода
Нам нужно написать код для нашего скрипта автоматизации для работы с фреймворком Galen. Прежде чем вы начнете писать код для автоматизации браузера с помощью Galen framework, вам понадобится каталог для вашей программы. Вы можете создать каталог, перейдя в тестируемый каталог Java. Перейти к тесту-> каталог java-> создать каталог с именем “наборы тестов” и создать новый класс.
Вот пример, демонстрирующий автоматизацию браузера с помощью платформы Galen. Я буду писать код для проверки наличия логотипа и пикселя для логотипа LAMBDATEST и цвета фона, размера шрифта для кнопки с надписью “НАЧАТЬ ТЕСТИРОВАНИЕ”.
В окне IntelliJ, которое вы сейчас видите, напишите следующий код:
КОД (Не требующий пояснений):
SampleUILayoutTest.java Last week Dec 27, 2018 M Muthuraja Ramakrishnan uploaded an item Java SampleUILayoutTest.java package testSuites; import com.galenframework.api.Galen; import com.galenframework.reports.GalenTestInfo; import com.galenframework.reports.HtmlReportBuilder; import com.galenframework.reports.model.LayoutReport; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.testng.annotations.AfterClass; import org.testng.annotations.AfterMethod; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; import java.io.IOException; import java.util.Arrays; import java.util.LinkedList; import java.util.List; public class SampleUILayoutTest { private static final String lambdaTestpage = "src/main/resources/specs/lambdatest.gspec"; private static final String baseURL="https://www.lambdatest.com/"; private WebDriver driver; private LayoutReport layoutReport; /* initialize webdriver, make sure you download chrome driver in http://chromedriver.chromium.org/downloads and drop the exe file under resources folder */ @BeforeClass public void init() { //declaration and instantiation of Objects/variables System.setProperty("webdriver.chrome.driver", "src/main/resources/chromedriver.exe"); driver = new ChromeDriver(); //triggers chrome to launch for directing it towards the base url driver.get(baseURL); //Maximize the browser window driver.manage().window().maximize(); } @test public void checkLogoVisibleAndImageVerification() throws IOException { //Executing Layout check and obtaining the Layout report layoutReport = Galen.checkLayout(driver, lambdaTestpage, Arrays.asList("desktop")); } @AfterMethod public void reportUpdate() { try { //Creating a list of tests List tests = new LinkedList<>(); //The object you create will be consisting the information regarding the test GalenTestInfo test = GalenTestInfo.fromString("Test Automation Using Galen Framework"); //Adding layout report to the test report test.getReport().layout(layoutReport, "Verify logo present and log image comparison"); tests.add(test); //Exporting all test report to html new HtmlReportBuilder().build(tests, "target/galen-html-reports"); } catch (Exception e) { e.printStackTrace(); } } @AfterClass public void tearDown() { //Close and Quit the driver. driver.quit(); } }
Шаг 5: Создание отчета:
Как только вы запустите приведенный выше код, отчет будет сгенерирован в разделе цель ->гален-html-отчеты открыты reports.html который возвращает следующий отчет
Нажмите на метку гиперссылки слева.
Вы найдете подробный отчет и сведения о сбоях, показанные на странице “Сводка”. Нажмите на любую из ссылок, например, я нажал на видимую ссылку, и она подтвердила представленный ниже логотип.
Вот еще один пример, когда я нажал на css “цвет фона”, цвет фона был подтвержден как черный.
Устранение неполадок
- После настройки проекта, в случае, если вы получите какую-либо ошибку в IntelliJ, пожалуйста, дважды проверьте, щелкнув правой кнопкой мыши Проект-> Открыть Настройки модуля-> Модули-> Выберите JDK версии 1.8
- Мы должны поддерживать правильные отступы в файле спецификации, иначе это может привести к ошибке. Пожалуйста, посетите веб-сайт для получения более подробной информации.
Пожалуйста, посетите веб-сайт для получения более подробной информации.
Это было все, что вам нужно знать для начала работы с автоматизацией браузера использования платформы Galen для выполнения кроссбраузерного тестирования макета вашего веб-сайта или веб-приложения. Не стесняйтесь поделиться своим мнением об этом уроке в разделе комментариев ниже. Я был бы признателен, если у вас есть какие-либо вопросы ко мне или если вы поделитесь своим опытом работы с Galen framework для тестирования кроссбраузерной компоновки до сих пор? Счастливого тестирования!
Первоисточник: lambdatest.com
Оригинал: “https://dev.to/lambdatesting/using-galen-framework-for-automated-cross-browser-layout-testing-3g77”