Anastasios Daskalopoulos, a software tester/QA specialist with 19 years of experience, talks about recent changes in software quality assurance and a simple approach to continuous testing in DevOps.
Table of Contents
The Changing Face of QA
Simple approaches to quality assurance are the trend today. They are applied by all companies, even those that do not work with DevOps. The main goal of QA is to test a project as thoroughly as possible. It can be made after deployment or even during development.
So what has changed?
- Testing teams have become smaller. The format of work, in which 40 people work in a small room, is a thing of the past.
- QA engineers are no longer at the bottom of the development team hierarchy.
- Testers should now have the skills of developers, and developers should know how to write good tests, not just shift their responsibilities to others.
- Testers and developers cooperate more.
- Testing phases can last weeks or even months.
- The Agile approach has become prevalent.
- DevOps corporate policy has turned QA from a whim of project managers into an essential stage of development.
Despite all these changes, QA has always had the same goals:
- eliminate or at least minimize bugs in the production environment;
- evaluate all the risks that may occur in the released software;
- organize and be responsible for creating test cases;
- be responsible for communications regarding the system’s quality.
The importance of QA. Obvious or not?
It would seem that the need for professional testing is obvious. But not for everyone. We often face objections to QA. Below we will consider all the most common objections and immediately refute them.
QA takes too long
With continuous testing integration, QA is maintained simultaneously with development without delaying the team. Time is money (you have to pay for testing)
Fixing bugs during development is much cheaper than fixing them after the product release.
“Bugs still appear, so why worry about testing?” This problem can be solved by risk-based testing, which allows you to identify and eliminate most defects.
“I don’t want to do this. If the end-user reports a problem, we will fix it.” Poor software is the biggest blow to a company’s credibility.
To summarize, let’s draw attention to 2 points. First, do not neglect automated testing: a well-trained automated testing engineer can find and fix problems better and faster than a regular tester. According to statistics, 10-33% of all problems are detected with automated testing.
And secondly, QA must be independent and maintained solely by QA engineers. After all, developers have their core tasks to solve, so performing all the work on their own does not make any sense.