SlideShare a Scribd company logo
Dockerization of real mobile device farm and
scalable QA automation ecosystem
1. Reasons we build private mobile clouds for our customers
2. The components of our mobile cloud
3. How Docker helps us to deploy the infrastructure in minutes and
maintain it in the future
4. Scaling web automation with Selenoid and Go Grid Router
5. Organizing infrastructure with Docker Compose
Contents
2
3
• 1000+ mobile tests are run daily, results are needed ASAP
Practicability of development
• Fragmentation of devices involves tests debugging
• Mobile cloud is used by manual and automation QA engineers
• The customer has higher security requirements
• It is necessary to test the integration with IoT devices (fitness bracelets, smart clothes)
Lower cost if you run small amount of tests
Wider range of devices available
Solutions existing on the market
4
No possibility of remote test debugging
Need to wait in queue for free device
Security questions are solved in non-trivial way
x N
x 5 x 30
5
Mobile cloud components
x N
Linux Server
Udev
service
Device
container
6
Dockerizaton of mobile device
SUBSYSTEM=="usb",
ENV{ID_SERIAL_SHORT}=="ZY2553415FD", MODE="0666",
SYMLINK+="device-ZY2553415FD-Motorola_G4-5080-
7821-7830"
SUBSYSTEM=="usb",
RUN+="/usr/local/bin/device2docker"
51-android.rules
7
Selenium infrastructureZafira QA reporting Sonarqube Code Analysis
OpenSTF Device Farm
CI Infrastructure
Jenkins Master Jenkins Slave
Plugins
Security
Job DSL
Java 8
Apache Maven
Android Tools
8
QPS infrastructure
9
What’s the profit?
• ADB Server isolation
• Appium Server isolation
• Automatic start after connecting to a mobile device
• 99% of the problems with the device are solved by restarting the
container
• Configuration of new server takes less than 10 minutes
10
Device storage
11
STF interface
12
Difficulties with Selenium
• Necessity to monitor compatibility between ChromeDriver,
Geckodriver, IEdriver and current browser version
• HDD space quickly becomes clogged with temporary files
• Extremely difficult to maintain multiple versions of the same browser
• Authorization is not supported
13
What is the solution?
Selenoid (from Aerokube) is a new implementation of the Selenium
hub, which uses Docker containers to launch browsers.
• Consumes 10 times less memory than Selenium on Java
• Fully isolated environment
• Allows to save test session browser logs and videos
14
Selenoid UI
15
Selenoid UI
15
Scaling
Selenium / Selenoid hubs are combined with the help of Go Grid
Router, a lightweight active load balancer used to create scalable and
highly available Selenium clusters.
htpasswd -bc /etc/grid-router/users.htpasswd test test-password
<qa:browsers>
<browser name="firefox" defaultVersion="45.0">
<version number="45.0">
<region name="1">
<host name="localhost" port="4445" count="1"/>
</region>
</version>
</browser>
</qa:browsers>
17
Configuration of Go Grid Router
18
Docker Compose
Zafira QA reporting
The reports service component was used for
composition:
• Web application container
• PostgresDB
• RabbitMQ
19
Docker Compose
Great for creating a Selenium cluster
Selenium infrastructure
• https://github.com/aerokube/ggr
• https://github.com/aerokube/selenoid
• https://github.com/qaprosoft/qps-infra
• https://github.com/qaprosoft/zafira
• https://github.com/qaprosoft/carina
20
Useful Materials
Any questions left?
alex@qaprosoft.com

More Related Content

PPTX
Mobile Application Testing
PDF
Đảm bảo chất lượng phầm mềm (nguồn PTIT)
PPTX
Slide đồ án kiểm thử PM
PDF
Cypress - Best Practices
PDF
Mobile application testing
PPT
Basic Guide to Manual Testing
DOC
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
Mobile Application Testing
Đảm bảo chất lượng phầm mềm (nguồn PTIT)
Slide đồ án kiểm thử PM
Cypress - Best Practices
Mobile application testing
Basic Guide to Manual Testing
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM

What's hot (20)

PPT
Manual testing ppt
PDF
Appium: Automation for Mobile Apps
DOC
Testing documents
PDF
Software Testing Process, Testing Automation and Software Testing Trends
DOC
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
PPT
iOS Application Testing
PDF
Giáo trình Tester Full
PDF
Mobile Testing with Appium
PDF
Đề tài: Kiểm thử phần mềm trên thiết bị di động, HAY, 9đ
PDF
Loadrunner vs Jmeter
PDF
Infographic: Importance of Performance Testing
PPTX
How to Design a Successful Test Automation Strategy
PPT
Mobile Application Testing Strategy
PPTX
Writing Test Cases in Agile
PDF
Test Automation
PPTX
User acceptance testing checklist (uat)
PDF
Ứng dụng công cụ test tự động kiểm thử website
PPTX
Appium overview
PDF
What is Test Plan? Edureka
DOCX
Testing in TFS
Manual testing ppt
Appium: Automation for Mobile Apps
Testing documents
Software Testing Process, Testing Automation and Software Testing Trends
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
iOS Application Testing
Giáo trình Tester Full
Mobile Testing with Appium
Đề tài: Kiểm thử phần mềm trên thiết bị di động, HAY, 9đ
Loadrunner vs Jmeter
Infographic: Importance of Performance Testing
How to Design a Successful Test Automation Strategy
Mobile Application Testing Strategy
Writing Test Cases in Agile
Test Automation
User acceptance testing checklist (uat)
Ứng dụng công cụ test tự động kiểm thử website
Appium overview
What is Test Plan? Edureka
Testing in TFS
Ad

Similar to Dockerization of real mobile device farm and scalable QA automation ecosystem (20)

PDF
Selenoid
PPTX
Webinar : Docker in Production
PDF
Scaling your Automated Tests: Docker and Kubernetes
PPTX
Kubernetes 101
PDF
Evénement Docker Paris: Anticipez les nouveaux business model et réduisez vos...
PPTX
Detailed Introduction To Docker
PDF
Cloud Native Dünyada CI/CD
PDF
VMworld 2013: VMware NSX: A Customer’s Perspective
PPTX
Docker–Grid (A On demand and Scalable dockerized selenium grid architecture)
PPTX
UNITde II - Docker-Containerization.pptx,
PPTX
Docker EE 2.0 Choice, Security & Agility
PPTX
Docker 101 describing basic docker usage
PPTX
Adapt or Die: A Microservices Story at Google
PDF
Automated Deployment and Management of Edge Clouds
PPTX
vodQA(Pune) 2018 - Docker in Testing
PPTX
ma-formation-en-Docker-jlklk,nknkjn.pptx
PDF
OSDC 2018 | Highly Available Cloud Foundry on Kubernetes by Cornelius Schumacher
PPTX
Oracle virtual appliance
PDF
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...
PPTX
Exalogic Technical Overview
Selenoid
Webinar : Docker in Production
Scaling your Automated Tests: Docker and Kubernetes
Kubernetes 101
Evénement Docker Paris: Anticipez les nouveaux business model et réduisez vos...
Detailed Introduction To Docker
Cloud Native Dünyada CI/CD
VMworld 2013: VMware NSX: A Customer’s Perspective
Docker–Grid (A On demand and Scalable dockerized selenium grid architecture)
UNITde II - Docker-Containerization.pptx,
Docker EE 2.0 Choice, Security & Agility
Docker 101 describing basic docker usage
Adapt or Die: A Microservices Story at Google
Automated Deployment and Management of Edge Clouds
vodQA(Pune) 2018 - Docker in Testing
ma-formation-en-Docker-jlklk,nknkjn.pptx
OSDC 2018 | Highly Available Cloud Foundry on Kubernetes by Cornelius Schumacher
Oracle virtual appliance
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...
Exalogic Technical Overview
Ad

Recently uploaded (20)

PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPT
Teaching material agriculture food technology
PDF
cuic standard and advanced reporting.pdf
PPTX
Spectroscopy.pptx food analysis technology
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Electronic commerce courselecture one. Pdf
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
Encapsulation theory and applications.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Mobile App Security Testing_ A Comprehensive Guide.pdf
“AI and Expert System Decision Support & Business Intelligence Systems”
Teaching material agriculture food technology
cuic standard and advanced reporting.pdf
Spectroscopy.pptx food analysis technology
Unlocking AI with Model Context Protocol (MCP)
Electronic commerce courselecture one. Pdf
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Network Security Unit 5.pdf for BCA BBA.
A comparative analysis of optical character recognition models for extracting...
Encapsulation theory and applications.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Advanced methodologies resolving dimensionality complications for autism neur...
The Rise and Fall of 3GPP – Time for a Sabbatical?
sap open course for s4hana steps from ECC to s4
Assigned Numbers - 2025 - Bluetooth® Document
Dropbox Q2 2025 Financial Results & Investor Presentation
gpt5_lecture_notes_comprehensive_20250812015547.pdf

Dockerization of real mobile device farm and scalable QA automation ecosystem