Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Â
Automated Testing in the Age of Container Clusters
1. MANOJ KUMAR KUMAR SELENIUM COMMITTER DAY, TOKYO !
AUTOMATED TESTING IN THE AGE OF CONTAINER CLUSTER
2. ABOUT ME
⸠Open source enthusiast
⸠Selenium member
⸠Author assertselenium.com
⸠Organizer seleniumconf.com
⸠Tweets: @manoj9788 LinkedIn: manojkumar9788
⸠Lives in Sydney, enjoys BasketBall and Kayaking
3. WHATâS IN FOR TODAY?
⸠Todayâs Technological scenario
⸠Test Automation using Selenium
⸠Selenium Grid
⸠Docker Containers
⸠Dockerize your functional tests
⸠Orchestration tools for containers
⸠Third party tools
4. TODAYâS TECHNOLOGY SCENARIO
⸠Time to Market
⸠Ship It as soon as possible
⸠Cost Optimization
⸠Compete with less cost
⸠Paradigm shift
⸠Constantly changing environment, CI, CD, DevOps
⸠Distributed computing
⸠Dockers, Cloud computing
5. CONTINUOUS DELIVERY
⸠Itâs all about continuous delivery
Continuous Integration >
Continuous Testing >
Continuous Delivery
6. CONTINUOUS-INTEGRATION, TESTING, DEPLOYMENT & DELIVERY
Continuous Delivery != Continually delivering software
Continuous Delivery == Continuous production readiness
Continuous Deployment == Continually delivering software
DevOps is Not a Market, but a Tool-Centric Philosophy That Supports a
Continuous Delivery Value Chain
Thanks to Alister
7. TEST AUTOMATION
⸠Browser Automation library
⸠A suite of tools
⸠JavaScript, Java, Python, C#, Ruby
⸠W3C candidate recommendation
8. SELENIUM-GRID
â¸Hub
â¸The intermediary and the manager
â¸Allocates Test Slots to nodes
â¸Takes instructions directly from client, and executes them remotely on nodes
â¸Node
â¸Registers itself to Hub listed in conďŹg
â¸Communicates its conďŹg to the Hub at registration time:
â¸Test Slots per browserâ¨
âHey Hub, I have 1 Slot for Firefox, 5 for Chromeâ
â¸Receives JSON wire protocol instructions from the Hub
DISTRIBUTED TESTING
10. CHALLENGES
⸠Tests start growing
⸠Parallelization (reduces time)
⸠VMâs are heavy and costly to maintain
⸠Agents are costly
SolutionâŚâŚ
11. CONTAINERS TO RESCUE
⣠Light-weight
⣠All pre-requisites apps/libs are packaged.
⣠Also for mobile..
Docker Driven Development
UniďŹed Infrastructure for Dev and Test
13. ⸠Virtual Machineâs
⸠Includes Hardware simulation
⸠Can simulate only few VMâs per server
⸠Slower latency, takes time to load.
⸠Containers
⸠Based on Linux containers
⸠Lightweight - requires only few MBâs
⸠AUFS- Advanced Multi-Layered UniďŹcation File System
CONTAINERS VS VMâS
15. DOCKER-SELENIUM
⸠selenium/hub: Image for running a Selenium Grid Hub
⸠selenium/node-chrome: Selenium node with Chrome installed.
⸠selenium/node-ďŹrefox: Selenium node with Firefox installed.
⸠selenium/node-phantomjs: Selenium node with PhantomJS installed
⸠selenium/node-chrome-debug: Selenium node with Chrome installed and
runs a VNC server.
⸠selenium/node-ďŹrefox-debug: Selenium node with Firefox installed and runs a
VNC server.
All these images needs to be connected to a Selenium Grid Hub
DOCKER-SELENIUM IMAGES - HTTPS://HUB.DOCKER.COM/R/SELENIUM/
25. CAPABILITIES OF ORCHESTRATION TOOLS
Self healing capability
Automatically brings up the containers if for some reasons it goes
down.
and much moreâŚ.
27. Package Manager for Kubernetes
Use Helm package
$ helm install stable/selenium
KUBERNETES - SELENIUM
28. RECOMMENDED THIRD PARTY TOOLS BASED ON DOCKER-SELENIUM
Zalenium
https://github.com/zalando/zaleniumâ¨
⸠Disposable and ďŹexible docker-based Selenium Grid
⸠Live preview of tests running
⸠live dashboards(ofďŹine too)
⸠Integration of Cloud Testing solutions
⸠Run on Kubernetes (Beta!)
29. Aerokube
Selenoid
⣠âGoâ language implementation of Original(ofďŹcial) Selenium-Hub
⣠Docker based
⣠Re-use of containers
GridRouter
⣠Light-weight server routes requests to multiple hubs
⣠Scalable solution(1000+)
RECOMMENDED THIRD PARTY TOOLS BASED ON DOCKER-SELENIUM