Running Automation tests twice as faster: How we got rid of Selenium Grid dependency.

schedule Jun 30th 02:00 - 02:45 PM place Kalinga Hall 2 people 91 Interested

With the rapid scaling of our health care application under consideration, in terms of number of users and the functionality involved as well as migration from a legacy system, the need to increase the coverage of automated tests for both systems seemed vital. Also, running a large no of test suites on daily basis against multiple browsers was critical.

As a part of this transition, the existing popular concept of using a continuous integration server with a grid machine and individual node machines poised issues in terms of cost as well as performance. Increase of automated test led to the increase in demand of node machines distributed across different machines on the same/different network. While the network latency for a limited number of node machines could be ignored, it eventually caused a significant reduction in performance.

Being part of a large enterprise, changing the architecture was not a feasible solution. In this talk we will talk about how selenium grid was removed from the equation to achieve automated tests that ran twice as faster and how it can be integrated on enterprise level requirement.

 
 

Outline/Structure of the Talk

  1. Current Practices: Automated testing with Selenium Grid and a CI Server [4 mins ]
  2. Problems With Current Practices: Network latency between node, hub and agents as well as under utilization of available resources [8 mins ]
  3. Alternative vs Architectural Constraints: Less architectural leverage for most of the large enterprise systems [ 8 mins ]
  4. Proposed Alternative and Details:
    • Running code as well as test on same machine
      1. Multiple remote agents on single server [ 3 mins ]
      2. Sharing of built artifacts among the agents [ 3 mins ]
      3. Aggregated result parsing and result display [ 6 mins ]
  5. Demo/Video [ 5 mins ]
  6. Q/A [ 5 mins ]

Learning Outcome

  1. Ideas on working around current practices as per enterprise level requirement and needs
  2. Possible alternative to selenium grid-node architecture

Target Audience

Enterprise Level Automation Testers

Prerequisites for Attendees

  1. Selenium
  2. Continuous Integration
  3. Selenium Grid
schedule Submitted 1 year ago

Public Feedback

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

    Hi Kushma,

    Interesting and hit on real time problems, however

    1. The problem is understood but the solution points are vague and unknown, 

    it's great if you can slice your outline a bit more with the items you are going to cover to help attendees take away the solution in their work.

    The more real-time examples, the more practical interaction the better the chances attendees gain from it and in return, you gain the joy of sharing it.

    2. A more interactive or practical based slide/short 1-3 minute video record will help us understand more.

    3. Do you plan to do a live demo of before and after effect? [Trust me, it can make your talk great]

    4. A rough time slicing in outline would help you as well to be on time.

    • Kushma Thapa
      By Kushma Thapa  ~  1 year ago
      reply Reply

      Hi pooja, 

      thanks for your feedback. Yes I will include a live demo. Also, Ill shortly add a video link as soon as possible and update the outline.

      Thanks.

      • Anand Bagmar
        By Anand Bagmar  ~  1 year ago
        reply Reply

        Live demo is always better, but would also be good to have a backup plan in case the live demo does not work for some reason. Also, would you need anything specific to do the live demo?

        • Kushma Thapa
          By Kushma Thapa  ~  1 year ago
          reply Reply

          Yes Ananad, as a  back up , we will have a demo video  compiled. And as for the requirement,  there  isn't any specific requirement.

           

          Thanks.

    • Kushma Thapa
      By Kushma Thapa  ~  1 year ago
      reply Reply

      Hi Pooja, 

      I have updated the outline.

      I am working on demo video which will be added once I am done working on it. 


  • Liked Simon Stewart
    keyboard_arrow_down

    Simon Stewart - Fix a Bug, Become a Committer

    Simon Stewart
    Simon Stewart
    WebDriver Creator
    Facebook
    schedule 1 year ago
    Sold Out!
    480 Mins
    Workshop
    Beginner

    Have you ever wondered how Selenium works under the covers? Do you get frustrated with locators not locating, pages not loading, or browsers behaving inconsistently from one run to the next? Selenium is an attempt to unify thousands of disparate elements across a wide spectrum of challenges into a single, common interface that works seamlessly with all the major browsers - and yet only a handful of volunteers work to maintain this gigantic effort. If you would like to enhance your own Selenium experience while contributing back to the software that has defined so many of our careers, come to this workshop. In it we'll dissect the different elements of Selenium, dive into its internals, learn how it was built and how to make changes to it, and even write a unit test you can contribute on the same day!

  • Liked Anton Angelov
    keyboard_arrow_down

    Anton Angelov - Infinite Improbability Testing- Execute All Tests in Parallel

    Anton Angelov
    Anton Angelov
    CTO
    Automate The Planet
    schedule 1 year ago
    Sold Out!
    45 Mins
    Talk
    Intermediate

    100000 tests executed under half an hour - sounds like a myth? Well, we made it, and I'm going to tell you a story how we got there. Through surveys, we discovered that many companies desire to utilize the benefits from parallel tests execution to optimize their software development process. However, they struggle with the process. Lack of available tooling, documentation, tests data arrangement/deletion, handling E2E tests specifics like browsers, emulators, etc. We were one of this companies. Because of that, we created an open-source tool for the job. Throughout the presentation, you will find statistics where, depending on the type of the tests, the tests execution can speed up from 4- 40 times which makes the run of the 100000 tests possible for 27 minutes.

    It will be shown how to utilize the tool, its various features and where/when it is appropriate to use it. Also, you will find example solutions to most of the common challenges in executing tests in parallel. We believe that in the near future the parallel tests execution will be a necessity, much like unit tests or continuous integration now. This will be one of the pillars for the companies to improve their competitiveness and effectiveness.

  • Liked Gil Tayar
    keyboard_arrow_down

    Gil Tayar - Not Only Cars: “AI, Please Test My App”

    Gil Tayar
    Gil Tayar
    Sr. Architect
    Applitools
    schedule 1 year ago
    Sold Out!
    45 Mins
    Talk
    Beginner

    Autonomous cars were a Scifi dream not 10 years ago. A computer driving a car? No way. But it did happen, and is happening. And if scientists do it for a complicated task such as driving, can they do it for automated regression testing? In this talk we explore what is being done in the field today, but also speculate about the future: we introduce the 6 levels of autonomous testing (that correspond to the 5 levels of autonomous driving), and try and figure out what kind of help current AI techniques can bring to automated testing.

  • Liked Raj Thapa
    keyboard_arrow_down

    Raj Thapa - 100% automated, customized and continuously integrated performance test with result analysis and reporting

    45 Mins
    Talk
    Intermediate

    While performance tests are common among web applications to test their speed, scalability and reliability, a systematic approach to conduct dynamic, automated and customizable automated tests along with fully automated results reporting and display can be regarded as a major challenge.

    In this session, discussions on an approach to conduct about the aforementioned with zero manual intervention will be carried out. The result being a fully automated test strategy that can easily be outlined to Product owners and higher-level management.

    The discussion will be focused on the overall process that initiates with the execution of performance tests using Continuous Integration Server whose results are extracted, logged and used for performance analysis, monitoring and baselining.

    The results are reported in a custom dashboard comprising of features that compare every build with historical data, compare deviations and provide a concrete idea of standard performances regarding the response time of the server over a period. A separate aggregated high-level report is also sent automatically as an email to respective stakeholders.

  • Liked Ruchika Rawat
    keyboard_arrow_down

    Ruchika Rawat - Lean Test Approach - in Agile

    Ruchika Rawat
    Ruchika Rawat
    Quality Analyst
    Thoughtworks
    schedule 1 year ago
    Sold Out!
    20 Mins
    Case Study
    Beginner

    Talk Description Automation provides an immense amount of value in preventing regressions and helping to deliver quality software. As an organization’s automation grows and grows, it requires continuous maintenance so that tests remain fast, reliable, and valuable. If not scaled efficiently, an organization’s automation suite will turn into a messy, uncontrollable beast. Having a lean test suite will help to combat this. In this session will present methods to keep automated test suites lean and mean, so they always provide quick and accurate feedback to the software delivery team. Using a few examples, she will discuss a wide range of ideas including evaluating a test's value, parallelizing tests, and producing consistent results. Session attendees will walk away with strategies and practices to scale their test automation over time in a highly efficient and maintainable way.

  • Liked Gil Tayar
    keyboard_arrow_down

    Gil Tayar - Frontend Testing: Stepping in and Collaborating with Developers

    Gil Tayar
    Gil Tayar
    Sr. Architect
    Applitools
    schedule 1 year ago
    Sold Out!
    45 Mins
    Talk
    Intermediate

    Testing is shifting left, moving closer to testing the code itself, and not the full product. But while managers dictate a shift to the left, the developers and testers themselves are confused as to how exactly to test the code. While the backend world already has established methodologies for testing, frontend developers and testers are still trying to figure out how to test their code.

    Testers need to step in and work with the frontend developers. Testers need to understand the framework by which frontend code is tested. They need to understand the various kinds of testing that can be performed on frontend code, and which tools can be used for this.

    I will give a recipe that you can follow to ease your fear of the unknown —writing tests for developer code. I will discuss the various kinds of testing and how they fit together in a coherent way, but most importantly - I will include sample code that you can use as a template in your own project, and if time permits—a bit of live coding will be done.