fbpx
Have something to share about Test Automation or WebDriver?
Become a speaker now

Archive for February, 2018

Dockerization of real mobile device farm and scalable QA automation ecosystem

Share our expertise in building up of highly scalable and effective infrastructure for Test Automation based on open-source solutions like Selenium and Appium by means of Docker.

We are going to show real case studies of our production challenges. Also we are going to talk about self-hosted mobile cloud solutions as part of QA ecosystem and how Docker simplifies our life in this area.

Alex Khursevich

Leading R&D specialist at Qaprosoft, responsible for development of QA automation ecosystem on the top of open-source solutions. Interested in robototechnics for IoT devices testing and activly working on Mobile Device Farm engineering.

Efficient Selenium Infrastructure

This workshop shows how to build efficient and scalable browser automation infrastructure using new tools: Selenoid and Ggr. You will be taught why running browsers in containers is so efficient, how to easily install Selenoid for local development and then create a fault-tolerant cluster with Ggr load-balancer.

To attend this class it is recommended to have some experience with Selenium, Linux shell and Docker. We also expect to have Docker installed on your computer and have some example Selenium tests to run.

Part I. Local browser tests development

1) Selenium: 20 mins of theory
– Brief Selenium history
– Current WebDriver architecture
– How Selenoid works
2) Selenoid installation for tests development
– What is required to start Selenoid
– Manual installation: creating config file, pulling browser images, starting Selenoid
– Shorter way: fully automated installation via CM tool
– Selenoid UI installation and features
3) Basic Selenoid features:
– Custom screen resolution
– Looking at live browser screen
– Recording and downloading video
– Custom test name
4) Updating browsers
– Automatically
– Manually

Part II. Creating Selenium cluster

1) Selenium clusters theory
– Why Selenium Grid is not suitable
– Client-side load balancing
– Server-side load-balancing
– How to share state. Session ID magic
– Ggr server. How it works
2) Setting up Ggr
– Creating users file
– Creating quota file
– Starting Ggr
– Running tests against Ggr
3) Cluster Maintenance
– Changing available browsers with no downtime
– Adding users with no downtime
– How to deal with multiple quota files
– Proxying to external commercial Selenium services
– Adding more Ggr instances. Health checking instances

Part III. Advanced Selenoid features for big clusters

1) Advanced browsers configuration file fields
– Volumes
– Environment variables
– Tmpfs
– Hosts entries
– ShmSize
2) Sending logs to centralized logs storage
– Why? Centralized logging storages
– How to configure Selenoid to send logs
3) Sending statistics to centralized metrics storage
– /status API
– Configuring Telegraf to upload statistics
– Creating statistics dashboard with Grafana
4) Building custom browser images
– What’s inside browser image
– Ready to use browser images
– How to build custom image
5) Selenoid for Windows browsers
– How it works without Docker
– Difference in configuration file
– How to run multiple isolated sessions under Windows

Kotlin for API test automation

Всё чаще и чаще в современном мире мы сталкиваемся с тестированием программных продуктов не только через кнопочки и формочки, а через непосредственно API. Тот вид, где преобладает не pixel perfect иконочек, шрифтов и идеальная композиция элементов на странице, а суровая структура данных на основе XML или более человечного JSON.

Это тот мир, где всего лишь одна скобочка, кавычка, запятая и в целом любой лишний символ в ответе на запрос клиента может остановить работу всего продукта, где уже просто так бегло глазами не проведёшь функциональный тест. Это тот мир, где без хотя бы полуавтоматического тестирования уже очень туго будет.

В данном тренинге мы разберём построение проекта с автоматизированными тестами API на основе возможно самого хайпового языка нашего десятилетия – Kotlin.

Для начала начнём с основ, которые потребуются для понимания принципов работы веб сервисов, взаимодействия между ними и дойдём до продвинутых способов автоматизации тестирования API с применением эффективных и проверенных на практике подходов в автоматизации.

  • Про API в целом
    • Типы (SOAP, RESTful, REST)
    • Форматы ответов (XML, JSON, GraphQL)
    • Как тестировать и автоматизировать (плюсы и минусы)
      • UI Tools (Postman, SOAP UI)
      • Языки (Python, Java, Kotlin)
  • Вводные по котлину
    • Новый язык или библиотека?
    • Основной новый функционал (с примерами откуда взяли фичи)
    • Какая польза и возможности использования
  • Практика кодинга
    • Kotlin + REST Assured/Retrofit 2
    • Базовый синтаксис и формирование запросов
    • Задание базовых конфигураций
    • REST Assured/Retrofit 2 с паттернами проектирования
  • Кодогенерация из json (когда и что использовать)
    • Swagger code generator
    • Intellij IDEA Plugins: JsonToKotlinPlugin, RoboPOJOGenerator
  • Кодогенерация из xml
    • XJC (POJO)
    • http://http4k-data-class-gen.herokuapp.com/xml

Kotlin with API tests

This talk is for those who already does test automation in Java or Groovy and interested in new tools and techniques in test automation. Also for those, who would like to understand if it is worth to learn Kotlin and use it on real projects.

We will review the most useful features of Kotlin that will help you in practice to solve real tasks. Also some libraries and tools will be demonstrated to simplify tests coding.

Roma Marinsky

IT party animal, test automation engineer, has invented useful test automation processes from scratch, Selenide adept, QA Club Lviv organizer, trainer and active promoter of free test automation education for beginners.

trud-ua

chisw

new qa club