Will Selenium Grid Survive in Future
Selenium is one of the leading test automation tools globally. It has dominated the industry as it is a an open source tool and there is a large expert base surrounding it. Selenium started in path way with the introduction of Selenium 1 (Selenium RC), where an intermediate proxy server was converting the native programming code to Java Script commands which was executed against the web browser. Selenium 1 had an array of products, Selenium IDE, Selenium Core and Selenium Grid. Selenium 2 was delivered as there were limitations inherited with Selenium 1. Main reason was that Selenium 1's Java Script nature didn't support many browsers.
Selenium 3 also has been evolved to the industry. The major change in Selenium 3 is the introduction of Gekho driver. We see still Selenium Grid is supplied to industry with Selenium 3. The question we have to ask here is how many years will it survive. Selenium Grid is a solution which gives the ability to execute Selenium script parallel in separate nodes (machines) which may have different browser combinations. These nodes can be managed easily in a web based console provided with Selenium Grid.
Selenium Grid has many competitors in the industry and its survival is now a concern. There are many cloud based solutions which have been come to the software test industry, which does the similar functionality of Selenium Grid. Sauce Labs, Browser Stack, Cross Browser Testing.com, Amazon Web Services are some of these cloud based automation testing. Lets look at why these solutions are fair more better than Selenium Grid.
- Less hardware and maintenance cost - To host Selenium Grid in a test environment that is mainly maintained in-house. There is a need to buy new machines as execution nodes to have automated test executed against multiple operating systems and multiple browsers. Managing these multiple nodes will be an extra effort and cumbersome task for the test department in an organization.
- No support for mobility automation - Selenium Grid only supports Browser automation and in personal computers. It does not support mobility automation and execution of automated test on native mobile applications.
- Closeness to the application under test - Some web applications will be hosted in a cloud environment and whereas automated test will be executed in a locally via Selenium Grid. The test execution will be slow compared to the test execute in the cloud. If both applications and test are executed in the cloud we could attain more speed in test execution compared executing in Selenium Grid.
- Scalability - Solutions like Sauce Labs can be easily scaled up 10 times easily and instantly compared to traditional Selenium grid.
- Ability to playback test scripts - Cloud test automation execution solutions like Sauce Labs provides the ability to re-play the test scripts if they are failed. These are given features. In Selenium Grid we may have to use additional effort to code and add these features, as it is not provided with the tool.
The only advantage Selenium grid has is the free and open source nature where Selenium grid can implemented within the organization with no licensing cost. Looking at these advantages that cloud tools have compared to Selenium Grid, the future of Selenium Grid is doubtful in the test arena.
Staff Engineer at Albert Heijn, Udemy Instructor
7ySelenium itself doesnt support mobile automation Selenium grid doea. You can connect any appium server to the grid and manage mobile automation. You can also use Selenium Grid docker image if you want scalability. You shouldn't compare Selenium Grid against any cloud based solution like Testinium or Saucelabs as they all have an Extended Selenium grid on the bottom.