Реклама в Telegram-каналах DzikPic и dev.by теперь дешевле. Узнать подробности 👨🏻‍💻
Support us

Запуск WebDriver GUI автоматичеких тестов на Docker платформах

Оставить комментарий
Запуск WebDriver GUI автоматичеких тестов на Docker платформах

Для запуска автоматических тестов часто ставится задача - создание изолированного окружения. Но организовать стабильное окружение для тестирования — далеко не самая простая задача. А если нужно тестировать сетевые взаимодействия компонентов и анализировать предельный уровень нагрузки на них, то задача становится еще сложнее. Так же хотелось бы иметь возможность быстрого развертывания окружения и гибкой настройки отдельных компонентов. Такие возможности дает нам Docker. Он отлично справляется с задачай создания изолированного окружения. Но можно ли использовать Docker для  запуска GUI автоматичеких тестов?

Читать далее

Перед нами стояла задача запуска наборов GUI автотестов под различными средами. Усложнялась задача тем, что все тесты должны были запускаться на одном хосте. Также требовалось иметь систему мониторинга и управления автотестами.

Для решения этой задачи мы решили использовать Docker. Это позволило нам реализовать все наши запросы. Также мы использовали Headlessly-режим ( Xvfb), что позволило нам эффективно использовать имеющиеся аппаратные ресурсы.

В нашем проекте мы используем облачный хостинг Ubuntu без GUI. Вы можете использовать уже существующие Docker образы, установив их из Docker репозитория. В нашем случае, нам была нужна определенная конфигурация среды испытания, поэтому нам пришлось создать свой собственный образ. Мы разработали Dockerfile, что позволило нам создавать свои образы с необходимой для нас конфигурацией: Ubuntu + Java + Gradle + OpenVPN + Firefox.

Наш WebDriver  проект  находится в папке на облаке, которая мапится на образ. Следовательно, для обновления наших WebDriver тестов нам не нужно создавать новый образ, а только необходимо запустить тесты с помощью сборщика Gradle, который собирёт всю систему автоматически, учитывая последние изменения.

Образ создает виртуальный экран, поэтому при запуске тестов вы не увидите браузер, где тесты запускаются. Имейте в виду, что такой подход  не означает использование фейковых браузеров, а использует реальные, которые используют Xvfb в качестве дисплея. Такой способ позволяет выполнять тесты быстрее и стабильнее.

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

Для управления и запуска тестов мы используем SSH и Telnet клиент, но также для этой цели вы можете использовать Jenkins. Решение использовать клиент в нашем проекте было вызвано тем, что мы можем выполнять shell команды в контейнерах. Это помогает нам выяснять и исправлять проблемы в среде испытаний.

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

Автор статьи: QA Automation Teqniksoft

Новый рекламный формат в наших телеграм-каналах.

Купить 500 символов за $150

Читайте также
97% тестировщиков пользуются инструментами автоматизации тестирования
97% тестировщиков пользуются инструментами автоматизации тестирования
97% тестировщиков пользуются инструментами автоматизации тестирования
QA в автостроении, за и против раннего написания функциональных автотестов
QA в автостроении, за и против раннего написания функциональных автотестов
QA в автостроении, за и против раннего написания функциональных автотестов
14 декабря состоится онлайн-митап LoGeek Night по автоматизированному тестированию. Эксперты из Luxoft расскажут о целесообразности покрытия нового функционала автотестами и особенностях тестирования в автомобилестроении. А также, по традиции, вас ждет розыгрыш подарков − умной колонки и мерча.
Кто такой тестировщик. Обзор изнутри от Евгения Шидловского
Кто такой тестировщик. Обзор изнутри от Евгения Шидловского
Кто такой тестировщик. Обзор изнутри от Евгения Шидловского
Про профессию рассказывает Евгений Шидловский, ведущий инженер-программист (lead software test automation engineer) в EPAM и преподаватель курса «Тестирование ПО» в IT-Academy.  Продолжаем цикл материалов про ИТ-специальности. Каждую из них описывает «типичный представитель» — опытный специалист. Мы надеемся, этим материалы помогут школьникам, студентам, переквалификантам, джуниорам и сочувствующим выбрать специальность в ИТ, оценить перспективы или просто сверить часы с авторитетным коллегой. Обсуждайте и дополняйте материал в комментариях, чтобы сделать его ещё полезней.
Google открыла код инструмента ClusterFuzz, он нашёл 16 тысяч багов в Chrome
Google открыла код инструмента ClusterFuzz, он нашёл 16 тысяч багов в Chrome
Google открыла код инструмента ClusterFuzz, он нашёл 16 тысяч багов в Chrome

Хотите сообщить важную новость? Пишите в Telegram-бот

Главные события и полезные ссылки в нашем Telegram-канале

Обсуждение
Комментируйте без ограничений

Релоцировались? Теперь вы можете комментировать без верификации аккаунта.

Комментариев пока нет.