Как сократить время тестирования с помощью Jenkins, Docker, Java, Selenide и Allure

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

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

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

В данной статье мы рассмотрим, как можно настроить запуск автотестов UI интерфейсов на Java с помощью фреймворка Selenide, системы управления сборкой Jenkins и контейнерной технологии Docker. Selenide представляет собой простой и эффективный инструмент для автоматизированного тестирования веб-приложений, который предоставляет множество возможностей для упрощения процесса тестирования. В сочетании с Jenkins и Docker, Selenide позволяет создать мощную систему для автоматизированного тестирования, которая значительно повысит качество вашего продукта и ускорит продуктивность вашей команды.

Шаг первый. Установка Docker

Docker — это платформа для разработки, развертывания и запуска приложений в контейнерах. Контейнеры позволяют разработчикам упаковать приложение со всеми его зависимостями, включая библиотеки и другие необходимые компоненты, и запускать его на любой машине без необходимости установки этих зависимостей. В этой инструкции мы расскажем, как установить Docker на Windows, MacOS и Linux.

Установка Docker на Windows:

  1. Загрузите установщик Docker Desktop для Windows по адресу https://www.docker.com/products/docker-desktop.

  2. Запустите установщик и следуйте инструкциям по установке.

  3. После установки откройте Docker Desktop, введите свои учетные данные и нажмите на кнопку «Sign In».

  4. Docker Desktop запустится, и вы будете готовы начать работу с Docker.

Установка Docker на MacOS:

  1. Загрузите установщик Docker Desktop для Mac по адресу https://www.docker.com/products/docker-desktop.

  2. Запустите установщик и следуйте инструкциям по установке.

  3. После установки откройте Docker Desktop из Launchpad, введите свои учетные данные и нажмите на кнопку «Sign In».

  4. Docker Desktop запустится, и вы будете готовы начать работу с Docker.

Установка Docker на Linux:

  1. Откройте терминал и выполните команду sudo apt-get update для обновления репозитория пакетов.

  2. Выполните команду sudo apt-get install docker.io для установки Docker.

  3. После установки выполните команду sudo systemctl start docker для запуска Docker.

  4. Выполните команду sudo systemctl enable docker для автозапуска Docker при старте системы.

Теперь, когда Docker установлен, вы готовы начать работу с контейнерами. Для подробностей по использованию Docker, смотрите документацию на официальном сайте https://docs.docker.com/.

Шаг второй. Установка Jenkins в Docker

  1. Создаем  папку Docker на на диске D:\

  2. Создаем файл Dockerfile с следующим содержимым

FROM jenkins/jenkins:2.387.1
USER root
RUN apt-get update && apt-get install -y lsb-release
RUN curl -fsSLo /usr/share/keyrings/docker-archive-keyring.asc \
  https://download.docker.com/linux/debian/gpg
RUN echo "deb [arch=$(dpkg --print-architecture) \
  signed-by=/usr/share/keyrings/docker-archive-keyring.asc] \
  https://download.docker.com/linux/debian \
  $(lsb_release -cs) stable" > /etc/apt/sources.list.d/docker.list
RUN apt-get update && apt-get install -y docker-ce-cli

#--------------------------------------------------------------  
RUN curl -LO  https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
RUN apt-get install -y ./google-chrome-stable_current_amd64.deb
RUN rm google-chrome-stable_current_amd64.deb
# Check chrome version
RUN echo "Chrome: " && google-chrome --version
#--------------------------------------------------------------  
RUN echo "deb http://deb.debian.org/debian/ unstable main contrib non-free" >> /etc/apt/sources.list.d/debian.list
RUN apt-get update
RUN apt-get install -y --no-install-recommends firefox

USER jenkins
RUN jenkins-plugin-cli --plugins "blueocean docker-workflow"
  1. Кладем файл  образа Docker  по которому будет собирать образ в папку D:\Docker.

  2. Вызываем командную строку CMD с правами администратора. Переходим в командной строке в папку D:\Docker.

    docker network create jenkins

    docker run --name jenkins-docker --rm --detach ^
      --privileged --network jenkins --network-alias docker ^
      --env DOCKER_TLS_CERTDIR=/certs ^
      --volume jenkins-docker-certs:/certs/client ^
      --volume jenkins-data:/var/jenkins_home ^
      --publish 2376:2376 ^
      docker:dind

Выполняем следующею команду в командной строке в папке D:\Docker где присутствует файл Dockerfile.

docker build -t myjenkins-blueocean:2.387.2-1 .

5.Запустите свой собственный myjenkins-blueocean:2.387.2-1 образ в качестве контейнера в Docker, используя следующую docker run команду:

docker run --name jenkins-blueocean --restart=on-failure --detach ^
  --network jenkins --env DOCKER_HOST=tcp://docker:2376 ^
  --env DOCKER_CERT_PATH=/certs/client --env DOCKER_TLS_VERIFY=1 ^
  --volume jenkins-data:/var/jenkins_home ^
  --volume jenkins-docker-certs:/certs/client:ro ^
  --publish 8080:8080 --publish 50000:50000 myjenkins-blueocean:2.387.2-1

Ожидаем завершения выполнения команды.

В браузере переходим по ссылке http://localhost:8080/

Переходим в контейнер Docker

Переходим в контейнер

Копируем пароль 412e4437bd064c249f41dea7ee3de688 (временный пароль 1 раз нужен при первой установке Jenkins, для каждой новой установке генерируется новый временный пароль )

Жмем кнопку Install suggested plugins

Ожидаем окончание процесса

Открывается новое. Окно Jenkins успешно установлен.

Настраиваем конфигурацию Jenkins, переходим на вкладку Настраиваем Jenkins

Переходим на вкладку Управление плагинами

Выбираем плагины Maven Integration и Allure и жмем кнопку "Download now and install after restart". Ожидаем пока установится плагины и перезагрузиться Jenkins.

Нажимаем галочку «Перезапустить Jenkins по окончанию установки и отсутствии активных задач»

Нажимаем галочку «Перезапустить Jenkins по окончанию установки и отсутствии активных задач».

После перезагрузки переходим на страницу http://localhost:8080/ и выполняем авторизацию.

Заходим настраиваем плагины Конфигурация глобальных инструментов

Настраиваем Maven. Выбираем версию 3.8.6

Allure настраиваем Allure 2.14.0

Создаем проект

Источник: https://habr.com/ru/articles/735342/


Интересные статьи

Интересные статьи

Недавно на работе столкнулся с интересной задачей: нужно было создать уведомления, которые бы рендерились с помощью вызовов функций. После ресерча различных библиотек и статей собрал все ведомые мне с...
Перед вами третий материал из серии статей, посвящённой настройке гиперпараметров. Если вы только осваиваете эту тему — взгляните на первую статью, в которой говорится о том, что такое настр...
В предыдущей статье («Angular Components with Extracted Immutable State») я показал, почему изменение полей компонентов без каких-либо ограничений - это не всегда хорошо,...
Два года назад я начал работать разработчиком ПО. Иногда я рассказывал своим коллегам о студенческом проекте, которым занимался на третьем курсе университета, и они восприняли его н...
Есть у меня один Python-скрипт с расчётами. Там был цикл примерно на 2000 итераций, каждая из которых считалась несколько минут. И решил я, чтобы ловчее отлаживать тот скрипт, выводить гра...