2 April, 2019
IT is one of those industries that notoriously changes – whatever was trending just a year ago, now might be considered outdated and replaced by something fresher. It’s no different with Quality Assurance. Fortunately, we don’t need to look into the crystal ball to predict the future of our industry – we’ve got a much better oracle. If you are trying to figure out what will be the most important QA objectives for the upcoming year, you should take a look at the “World Quality Report (WQR) 2018-19”. In this article, I’d like to highlight the most important software testing trends for 2019 mentioned in the report, all together with the best practices recommendations. Let’s take a look…
About the WQR
Whether you manage a QA team or are a client of a software house, it’s absolutely crucial to keep your eye on the development with accordance to the latest software testing trends. The World Quality Report gives you a pretty good insight into what’s going on in the QA world.
The latest edition of the WQR is based on insights of 1700 specialists from 32 countries and 10 different sectors. According to the authors, “[it] discusses the trends shaping QA and testing today, along with recommendations for addressing tomorrow’s challenges.”
The first, and if you ask me – the most important – observation is that QA and software testing has come a long way. From being treated like a supporting act, quality assurance grew to be the critical factor in both web and mobile development – from both business and customer satisfaction perspective.
In other words, QA is now being treated as a serious and inseparable part of software development.
What software testing trends for 2019 were pointed out by the authors of the report?
See also: Wolves Summit 2018
Based on the report details, the top Quality Assurance and testing objective, for not only 2019 but the next years to come, is end-user satisfaction. The role of a QA engineer has evolved from finding defects to actually thinking as the end-user. Software testers need to focus more on the whole experience.
“This indicates that QA and testing are increasingly aligned with business goals and the engineers should have a bigger picture in their minds.”
It’s not surprising that end-user satisfaction was marked as the priority goal. The rest of the key software testing trends for 2019 mentioned in a report eventually influence and enhance this one. In order to successfully achieve it, you need to have highly-skilled QA engineers, who understand their roles and responsibilities and are accountable for the quality of the product they work on. This should be a part of organisational culture. In fact, this trend isn’t very surprising. At The Software House, we saw the first signs of such an end-user-centred approach some time ago and we’ve been working on adapting to the changes ever since. Our QA team strives to achieve a higher level by cooperating closely with our clients, all QA engineers attend in-house training, improving their skills and knowledge base, as well as research and develop necessary testing tools (with emphasis on our TSH-original testing tool Kakunin – but we will talk about this later). I must shamelessly admit that, by looking at our five-star Clutch reviews complementing our high-quality products, as a head of the QA department, I feel very proud!
Growth in adoption of Agile
With the increasing demand to deliver software faster and to be more responsive to the changes, many companies have moved towards Agile Software Development. The report states that the QA and testing function is changing as well: “Adoption to Agile & DevOps leads to the fragmentation of the QA department. QA engineers are part of the development teams rather than separate testing units.” [We don’t like to be called “testing units” anyway! 🙄] According to the report, this decentralization causes issues with establishing new technologies, best practices and common approach with creating test scenarios and test reports.
Is it something we can avoid? Of course, we can! All we need to do is to define and supervise quality standards across all teams and encourage all QA engineers to be accountable for implementing and following them in their projects. Beyond that, we can establish recurring meetings with all QA team members and discuss improvements to the standards and processes with accordance to software testing trends.
Based on my experience in TSH, I can assure you that this approach works very well. We have already built a self-motivating team of QA/QAA engineers who are encouraged to constantly share their knowledge and work as a team, rather than jealously keeping useful tips to themselves. It immediately resulted in a massive customer satisfaction boost – because no matter of the projects, we have the same good practices for releasing high-quality products only.
Test environments and test data approach
According to the report respondents, the lack of test environments and manual test data generation is a number-one challenge as far as adoption of Agile development is concerned. It goes even further, as the second challenge – increasing the level of test automation – is connected with the first one. “Those factors are the bottleneck towards greater QA and testing maturity” – we read in the WQR. The main recommendation is to invest in smart QA and testing platforms, like containerized test environments, open data projects and smart solutions for test data sampling.
Containerized test environments bring a big value for testing since you don’t affect anyone else and are able to run automated tests that clean up all data or simply have new versions deployed for your specific tests. If you combine it with appropriate tools for generating test data automatically it speeds up testing activities a lot. Or you can move and anonymize production data – and guess what, we found a way to do that. We developed a smart open-source tool called Fogger that allows you to mask fragile data. It’s GDPR-friendly too!
AI role in QA and testing
The report states that the growth of artificial intelligence has a big impact on QA activities and will continue to grow in the upcoming years. Authors noticed that AI will “enable companies to transform testing to a fully self-generating, self-running and self-adapting activity.” In order to achieve that, you need to reach proficiency in automation.
“The main purpose of applying AI in QA is to create a smarter and faster testing architecture that runs and adapts itself automatically to application changes.”
What does that mean when it comes to practice? To put it simply – you can use AI to apply smart analytics to the most important decisions in the testing process, for example, task assignment optimization, test data generation, test case design approach, test execution priorities or generating optimal test reports. Beyond that, AI will be involved more and more in the execution phase, which is the most critical path of product validation. In my opinion, this is the natural way of transformation for QA and testing activities. Business demands fast delivery, a quick reaction to changes, high-quality products with optimized costs – therefore, forces us to introduce these smart solutions. Some are available as ready-to-use, off-the-shelf products (basically all Application Lifecycle Management tools) and others might be developed/enhanced in-house.
At TSH, we have our own solution: Kakunin. It’s an extension for Protractor that noticeably speeds up test automation work. You can use it for free too – this constantly improved open-source solution is our way of giving back to the IT community.
Smarter test automation will be a key focus
While reading the report, we can compare changes in the test automation approach over the last few years – “The approach has extended from automation of test execution to automation of test case generation. For the test objective, report results show that there is less focus on shortening of test times and more on better coverage and effective use of test cases. It also shows that the level of automation of test activities is still quite low.” The respondents stated that the main cause is that applications change quite often, making it hard to build a robust and adaptable test automation solution. Beyond that, issues with predictable and reusable test data and test environments cause problems for test automation work. The last issue is purely the lack of skilled and experienced test automation engineers.
I strongly agree with the recommendation that software companies need to move to a higher level of end-to-end testing automation. Test automation solutions need to be enhanced so that they enable self-running and self-adaptive test platforms. I am aware that increasing the level of smart test automation is a hard task since many companies lack skilled test automation engineers. One of the solutions is to constantly train your QA engineers, so that they learn best practices, good architecture design, etc. Speaking from my experience at The Software House, I can say that it’s the right approach to invest in your QAA engineers. Thanks to constant training, we have created a team of very skilled, technical QAA engineers. We’ve quickly realised that you don’t need an army of proficient specialists straight away. All you need is a group of people willing to start their adventure with test automation and very good mentors assigned to speed up their technical growth. Ambitious, strong-willed newbie, with a little bit of help and time, will become the skilled specialist you need.
See also: Women in Tech Summit
Software testing trends for 2019 – are you prepared?
As you can see, there’s A LOT going on in the world of quality assurance. Introducing necessary changes to your QA processes is basically a matter of survival if you want to keep up with your competitors and convince a potential client to choose you over them. I know it feels like a massive effort, however, I must tell you that it’s totally worth it. We’ve done it at The Software House and we can already see the effect. Our team consist of 15 extremely talented QA and QAA engineers. They cooperate closely with our clients from the very beginning of every project. For us, QA is more than testing and finding some nasty bugs. It means perfecting every product that comes out from The Software House, so that performance satisfies both our clients and future end-users.
The full World Quality Report can be found here. But if you’re not a fan of theoretical knowledge and would rather like to know something about implementing the report in the everyday work, I advise you to check out my other blog entry In the following article, I explain what Quality Assurance means to us and what are our day-to-day duties at The Software House. Eventually, I wish you good luck with your future Quality Assurance efforts. May you always find a flaw before the end-users do. 😉