Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

QA Fest 2019. Иван Крутов. Bulletproof Selenium Cluster

20 views

Published on

Browser tests are known to be the flakiest ones. This is partly because browser infrastructure is complicated to maintain. But the second reason is – mainstream browser automation tools such as Selenium server are far from being efficient.
A year ago I have shown Selenoid - a truly efficient replacement of the standard Selenium server. This year I would like to demonstrate how to organize a fault-tolerant and easily scalable Selenium cluster using virtual machines in the cloud. I will start by setting up several Selenoid nodes and configure them to send logs and recorded videos to S3-compatible storage. Then I will run multiple Ggr load balancer instances allowing to use all running Selenoid nodes and organize a single entry point to the cluster. Finally, we'll discuss how to work with VNC and video recording in such a cluster.

Published in: Education
  • Be the first to comment

  • Be the first to like this

QA Fest 2019. Иван Крутов. Bulletproof Selenium Cluster

  1. 1. Bulletproof Selenium Cluster: part I by Ivan Krutov
  2. 2. About me Java & Golang developer Devops Big Selenium cluster
  3. 3. Selenium Tools Selenoid BrowsersMoon
  4. 4. Selenium WebDriver architecture
  5. 5. Selenium == Pain
  6. 6. Installing Selenium Server Manually install Java Manually download Selenium JAR Manually download web-driver binaries Manually unpack web-drivers from archives Manually install required browsers Manually type complicated start command
  7. 7. Selenium window focus problem
  8. 8. Selenium browser settings problem
  9. 9. Installing two Firefox versions /usr/bin FF 68 FF 69
  10. 10. Selenium compatibility issues Chromedriver ???77
  11. 11. SelenoidSelenium
  12. 12. How Selenoid works Selenoid Container
  13. 13. Chrome Devtools Protocol JSON over WS
  14. 14. Chrome Devtools Protocol DOM tree manipulation CSS style manipulation Tracking network activities Inspecting accessibility tree Page tracing and profiling Subscribe to page events
  15. 15. Part I: References @aerokube https://telegram.me/aerokube https://aerokube.com/ https://bit.ly/2C2LstZ https://github.com/aerokube/selenoid https://github.com/aerokube/demo-tests https://github.com/aerokube/browsers-puppeteer-example
  16. 16. Bulletproof Selenium Cluster: part II by Ivan Krutov
  17. 17. S3 protocol Data Replica 2 S3 SLB Replica 1
  18. 18. Selenium Grid Nodes Hub Test
  19. 19. Selenium 4 Grid Router Test Distributor Nodes SessionMap
  20. 20. GoGridRouter Ggr Test Selenium Hosts
  21. 21. Multiple DC Cluster Architecture Ggr Test Selenium Hosts S3SLB
  22. 22. Part II: References @aerokube https://telegram.me/aerokube https://aerokube.com/ https://bit.ly/2C2LstZ https://github.com/aerokube/ggr https://github.com/aerokube/ggr-nginx-config

×