Software testing and quality assurance services have entirely redefined the way we interact with technology. Like any other practice, software testing has come a long way in improving the existing practices while incorporating futuristic concepts like Artificial Intelligence and Machine Learning into the picture.
Since BugRaptors has emerged as a brand that has always tried to innovate on the idea of quality assurance, we often try to connect with experts from the industry who could help foster the tester community with QA best practices.
This time, our in-house expert and Vice President, Delivery & Operations, Kanika Vatsyayan, interacted with Diego Molina from Berlin, Germany. Diego is a Staff Software Engineer at Sauce Labs, and his interaction with Kanika aimed at discussing the various aspects of automation testing. The conversation even tried to explore how test automation could help aid the regression testing while upgrading the overall testing strategy.
Diego is an industry expert with an experience of more than 18 years and loves testing. He is Selenium Core Committer, who is even responsible for co-maintaining docker-selenium and zalenium. Besides, Diego also works at creating helpful tools for testing and testing infrastructure allowing the testers community to explore the simple yet effective ways of testing. Diego is frequently involved in workshops, interviews, and other technical talks associated with different Selenium and testing conferences.
Without taking much of your time, let us quickly jump on the conversation to understand Diego's perspective on software testing and the use of automation testing technology.
Kanika Vatsyayan: A little bit of background of yourself and what you are up to these days.
Diego Molina: Years ago, I studied Computer Science in Colombia and got a job as a software developer. After that, I did my master's in Computer Science in Sweden. When I was done, I wanted to know if the north of Europe was a nice place to work and live, so I ended up finding a job in Berlin. Nowadays, I am a Staff Software Engineer in the Open-Source Program Office at Sauce Labs, contributing to Open Source on a daily basis and helping the community to find better ways to do testing.
Kanika Vatsyayan: How did you end up working in software testing?
Diego Molina: Like many others, I did not plan to work in testing, it just simply happened. While looking for a software developer job in Europe, a headhunter suggested to me a role called "QA/Automation Engineer," which I had never heard of.
After understanding better what the role was about and that coding was heavily involved in the job, I decided to apply for it and got the position. After a while, I ended up liking the role a lot because it gives more freedom than a regular software development job, you have more scope and are allowed to cover more aspects of the Software Development Life Cycle.
Kanika Vatsyayan: Can you talk about the challenges that you've had to address to identify the right automation testing tool?
Diego Molina: After working for a while in testing, the problem I started to face was not finding the right automation testing tool… The problem I faced was people choosing a testing tool before thinking about how to test a given application, which led to a whole bunch of new problems that should not have existed from the beginning. Choosing a tool first leaves you with a reduced number of options to build a proper testing strategy. I fell into that error many times, and I was able to better understand the situation after reading More Agile Testing, a book I completely recommend when getting started into software testing.
Kanika Vatsyayan: Role of test automation in the whole testing strategy.
Diego Molina: Test automation is a vital part of a testing strategy. However, we are sadly seeing broad use of test automation without a proper testing strategy. It is common to see folks coding new automated tests without a clear scope of what the test should do and test. In addition, we are used to thinking that test automation only covers end-to-end testing.
I believe testing roles need to get more involved in unit testing and component testing, or at least being able to advise the implementation of those types of tests instead of implementing everything as an end-to-end test. An example of this is React, this framework has excellent tooling for testing, and many tests that before needed to be implemented as a UI test could be implemented within React.
Kanika Vatsyayan: What are the benefits of automating the regression test?
Diego Molina: I believe they are mainly three:
Safety net: Allow you to make changes with the peace of mind that you are not breaking anything critical.
Enable fast iterations: automated regression tests save us from checking manually critical paths in the application that should always work, and with that, we can move faster into improving our application to make our end-user happier.
Kanika Vatsyayan: What's the best way for learners to reach out or learn more about you?
Diego Molina: You can always reach out to me through Twitter or through Selenium Slack, I am present most of the time in those two places. Looking forward to chatting with you all!
We hope the session has helped you explore automation testing in a bit more detail. In case you still have any queries surrounding software testing, automation testing, and regression testing, you can reach Diego or our in-house experts at BugRaptors through firstname.lastname@example.org
For more interesting updates or any assistance on your software testing and quality assurance projects, stay connected!