Selenium is by far the most preferred Test Automation tool for web applications and more people are adopting it for their test automation strategy. As someone new to test automation, do you know what it takes to setup a successful test automation environment and be productive with it? Here are some thoughts.
Starting out with Selenium
Selenium training: Once you have identified the people who will work on your test automation efforts, you have to account for the training period which could be anywhere from a few days to a few weeks depending upon the existing expertise of the individuals.
Test automation framework: Deciding on a framework can take a lot of work. There are a few approaches that are available that you have to evaluate and decide the one that fits best in your environment. The frameworks that exist include behavior driven, data driven, keyword driven & now agile.
Define Object Repositories: These repositories are a collection of UI and Application object data recorded by the testing tool for the application under test.
Define a test reporting framework : Selenium does not offer any sophisticated reporting mechanism so you will have to decide what type of reports you would want for your test environment - this may include test execution results reports and test management related reports.
Once the items above are addressed, you can start building your web automation tests.
As you can see that building out an effective test environment with Selenium will require commitment, up-front time and qualified resources. For an organization with a large application that has frequent updates, you will also have to prepare for managing the test cases already written & evaluate their usability in an ever-changing environment. Just to get the initial framework ready, you can spend anywhere from a few weeks to a few months before writing a single automation test.
Selenium Productivity Add-ons
While Selenium is probably one of the best test automation tools, you should look at tools that can help you speed up the entire automation process. There are a few Selenium Automation "wrapper" tools that run on top of Selenium and make you a lot more productive and you should definitely not shy away from evaluating them for:
1. Complexity - how complex are they to setup, learn & run
2. Test coverage (what % of selenium features can they support, can they automate, say, 80% of your automation needs with little effort)
3. Test management: Chances are that you will end up with 100's of test scenarios over a period of time. You want to ensure that can can easily manage the test cases
4. Reporting: You should be able to get a wide variety of reports including test execution & analytics with past results
5. Test Execution: You want to ensure that your texts can be validated against multiple browsers
6. Other productivity benefits: check if the tool helps you in your agile development process, CI/CD integration, assist in data driven testing, etc.
If you want to learn more about being more productive with Selenium, contact us at CloudQA (firstname.lastname@example.org)