Selenium Grid enables developers to significantly parallelize their testing pipeline. This strength can be empowered even further by leveraging the capabilities of Docker Swarm to efficiently utilize available resources and dynamically scale your testing capabilities. With the tools provided by Selenium and Docker, we can build a robust, scalable, and cost efficient browser testing platform without a significant degree of difficulty.

In this talk, we will cover how to build a Selenium Grid through docker swarm, how to scale that grid, how to test against it, what sort of computing resource requirements should be provided, and my personal experiences implementing this system.

 
38 favorite thumb_down thumb_up 21 comments visibility_off  Remove from Watchlist visibility  Add to Watchlist
 

Outline/Structure of the Tutorial

  1. Brief introduction to my background
  2. Introduction to docker/docker swarm
  3. How to set up a docker swarm
  4. How to configure a selenium grid stack
  5. How to run tests against that stack
  6. Some things to note - lessons I've learned, along with computing resource requirements

Learning Outcome

By the end of this talk, you should be able to go out and deploy your own selenium grid through docker swarm. Once you know how to do it, it's not difficult at all. The hard part is getting the information on how to implement it - which I'm excited to provide!

Target Audience

Anyone who wants to scale their parallelized testing efforts

Prerequisites for Attendees

It will be helpful to understand the basics of how docker, or at the very least virtual machines, work.

schedule Submitted 1 year ago

Public Feedback

comment Suggest improvements to the Speaker
  • Pooja Shah
    By Pooja Shah  ~  1 year ago
    reply Reply

    Interesting content, thanks for proposing David. Few quick queries:

    Is there any of your previous video link on any of your internal talk? Or if not, it would be great if you could just share/attach a short 1-2 minutes video shoot where you can just give insights on why for an attendee it's a useful topic or what you plan to cover.

    Also, as I see here a lot of potentials to share practical knowledge, attendees quickly getting started and knowing smart tips from you, almost like a crash course hence do you consider to do a 90 minutes workshop instead? The more real-time hands-on, practical interaction the better the chances attendees gain from it and in return, you gain the joy of sharing it.

     

    • David Kirk
      By David Kirk  ~  1 year ago
      reply Reply

      Hey Pooja, thanks for the feedback!

      Unfortunately I don't have any videos of talks that I've given internally, but I'll be happy to upload a short video later today after I finish up work for the day.

       

      I do think there's some value in doing this talk as a workshop, but it would be difficult to demonstrate any significant scaling of the stack, since it's pretty resource-intensive.  It would be more of a "here's how you set up docker swarm" talk than a "here's how you use selenium grid at scale through docker swarm."  I suppose, though, that for a beginner-tier talk, that might be useful?  I'm not sure what sort of hardware would be available/could be expected of the attendees.  I could definitely just give a talk of "here's how you set up docker swarm locally, here's how you deploy a single-node selenium grid stack through docker swarm, and here's how you would scale it if you had more computing resources" type talk - sort of a short workshop followed by a short presentation.

      What do you think?

      • Pooja Shah
        By Pooja Shah  ~  1 year ago
        reply Reply

        Great, will wait for the clip and I'm sure a clip attracts relevant attendees to the talk hence please make sure your face is visible while you speak.

        And thanks for clarifying, yes make sense, well-thought reasons to have it a talk, let's see how we can do it once we go through all related proposals, will keep you posted. 

        • David Kirk
          By David Kirk  ~  1 year ago
          reply Reply

          I've uploaded a video!  Please let me know if there is anything else you'd like me to cover!

          • Pooja Shah
            By Pooja Shah  ~  1 year ago
            reply Reply

            Thank you David for making time for it. On it.

  • LI  XU
    By LI XU  ~  1 year ago
    reply Reply

    加油

  • Jay Mahoney
    By Jay Mahoney  ~  1 year ago
    reply Reply

    Brilliant, Pitt County strong...!

     

  • Zachary Attas
    By Zachary Attas  ~  1 year ago
    reply Reply

    I've worked with David as a test engineer and used the Selenium grid that he's set up -- it's super useful!  

  • Tim Wilson
    By Tim Wilson  ~  1 year ago
    reply Reply

    ❤ Sounds interesting!

     

     

  • Tammy Jenkins Flynn
    By Tammy Jenkins Flynn  ~  1 year ago
    reply Reply

    ❤️ Awesomeness!

  • Sharon Hill Sprinkle
    By Sharon Hill Sprinkle  ~  1 year ago
    reply Reply

    ❤️Good luck David!

  • Melissa Hudson Sickels
    By Melissa Hudson Sickels  ~  1 year ago
    reply Reply

    Go David!!❤️

  • Nathan Reynolds
    By Nathan Reynolds  ~  1 year ago
    reply Reply

    As someone who has been to Selenium Conf, this would be really interesting and informative!

  • Jen
    By Jen  ~  1 year ago
    reply Reply

    I wish I could make it to this conference; this talk sounds amazing!

  • Crystal Reyes
    By Crystal Reyes  ~  1 year ago
    reply Reply

    Good luck David ☺️

  • Jane kirk
    By Jane kirk  ~  1 year ago
    reply Reply

    Excellent! ❤️

  • Jack
    By Jack  ~  1 year ago
    reply Reply

    Looks good

  • Harold
    By Harold  ~  1 year ago
    reply Reply

    Good Luck!

  • Kadie Jaffe
    By Kadie Jaffe  ~  1 year ago
    reply Reply

    Would love to see this! 

  • I <3 newguy
    By I <3 newguy  ~  1 year ago
    reply Reply

    This sounds great!

    • David Kirk
      By David Kirk  ~  1 year ago
      reply Reply

      Thanks!  It's helped out a whole lot at ReviewTrackers, and I'm excited to share what I've learned!


  • Liked Zachary Attas
    keyboard_arrow_down

    Zachary Attas - How to Un-Flake Flaky Tests- a New Hire's Toolkit

    Zachary Attas
    Zachary Attas
    Sr. Test Engineer
    ReviewTrackers
    schedule 1 year ago
    Sold Out!
    45 Mins
    Talk
    Beginner

    It's a common scenario - you are starting a new job as a test engineer, excited to improve your new organization's testing culture, eager to instill confidence in the software, and BAM! instead of writing new tests, you are tasked with fixing legacy ones! If this sounds familiar, this talk is for you. I'll cover strategies for taking inventory of flaky tests and setting goals to address flakiness across a test suite. In addition, you will learn to get to the bottom of what's causing flakiness in your tests, and to communicate with other engineering teams about those tests. Although everyone's application has its own quirks, and every organization has its own workflows, this talk aims to give advice that anyone can use in their own tests and when dealing with their fellow engineers. By the end of this talk, you will feel confident enough to debug your own flaky tests, and get to the fun part - writing new ones!

    Here are some alternate presentation titles, for your amusement:

    • Keep The Flakiness for Your Croissant: How to Un-Flake Your Automated Test
    • Bake The Flake Out of Your Tasty Test Cake
    • Flake It Off, Flake It Off: How to Un-Flake Your Flaky Test (T-Swift theme)
  • Liked Sneha Viswalingam
    keyboard_arrow_down

    Sneha Viswalingam - Building The Blocks of Trust In Automation

    45 Mins
    Case Study
    Intermediate

    Having followed best practices set from previous Selenium Conference talks, my team was able to shift from flaky tests to stable and reliable automated tests. During that time, I learned the importance of building trust in the test suite to unite the team as a whole. Once trust was established in the automated tests, it became crucial to the overall software development lifecycle. It has been an interesting journey to gain the confidence of the organization and have them believe that the automation effort has their backs.

    In this talk I will cover the following topics:

    1. Strategies that I used to make the tests reliable
    2. Explaining why it was important to train the manual testers to write feature files and thus help expand the automation suite using their subject matter expertise
    3. Presenting ways to improve visibility in automation to reinforce trust

    By implementing these steps in my organization, I have built trust not only within the test suite but into the team as a whole.

  • Liked Ivan Krutov
    keyboard_arrow_down

    Ivan Krutov - Selenoid: get rid of Selenium server!

    Ivan Krutov
    Ivan Krutov
    Developer
    Aerokube
    schedule 1 year ago
    Sold Out!
    90 Mins
    Tutorial
    Beginner

    Browser tests are known to be the flakiest ones. This is partly because browser infrastructure is complicated to maintain. But the second reason is – main stream browser automation tools such as Selenium server are far from being efficient.

    As your company grows – your browser automation infrastructure should easily adapt to increased loads and new requirements. Unfortunately this is not so easy to get really scalable Selenium cluster using only the main stream tools. But there are some new open-source tools and approaches that can be used to deliver really scalable Selenium cluster.

    This tutorial covers an emerging browser automation tool – Selenoid, a truly efficient replacement of the standard Selenium server. I will explain how it works and why it is so fast. I will show in details features like video recording, sending logs and statistics to centralized storage and how to easily visualize this data.