Delving into QA Automation for the Web with Selenium and Snaptest.io
As part of a new internal project at work, I now get to flex my quality assurance and software testing skills that I earned as part of my ISTQB Certified Foundation Tester exam. The overall task is to ensure that a new web-based performance appraisal solution works as intended and is fit for helping in the end of year review for all employees.
Do the research
Of course, as with any endeavor, I started doing some exploratory work, to see how exactly everything comes together and where improvements can be made. While the web app is relatively straightforward and the functionality is bare bones, this doesn’t mean that I should waste my time manually testing every possible button, workflow, or section.
As such, I started researching ways of automating web testing and soon came across the current “top dog” in this area — Selenium. While the general consensus is that it’s a very powerful framework for automating testing work, it is showing its age in terms of usability.
Fortunately, in my search I also found Snaptest.io, a tool that promises to take “Selenium out of the stone age”. It is comprised of a Chrome extension that provides a somewhat simpler method of recording and playing back actions you do in the browser.
After creating a free account and going through the tutorial, I was quickly able to start using it and automate at least some of the more boring tasks regarding my web app, like logging in as different users with various access levels.
Invest more time
Besides this basic functionality that can be achieved also with the regular Selenium IDE, which is a Firefox extension that operates in a similar fashion, albeit with a much more complex interface, SnapTest also has a few other nifty features.
Once you record a test, you can choose to see the standard Selenium code it builds behind the scenes, and then output it to locations like GitHub. It can certainly fit into bigger teams in this fashion, although I still need to invest some more time and start figuring out how to perform some more complex checks on the things that are happening in the browser.
SnapTest is still a bit rough around the edges and some things, like test folder renaming don’t always work as intended, but the team behind it seem dedicated to making it work as smoothly as possible.
For now, it certainly satisfies my purpose and helps out in my tasks. I set a new goal to start delving deeper into the QA world and I plan on expanding my knowledge in the Selenium world alongside tools like SnapTest.