Interview with Bettina Buchholz, Andreas Neumeister and Tom Kober 

 27 May 2022

Bettina Buchholz is Strategic Lead for Quality Assurance & Test at DB Netz AG and is Product Owner of the test-focused CI/CD pipeline MoQ-AP (Modular Quality Assurance Pipeline). Andreas Neumeister from CGI is an expert in test data management and test management. Tom Kober from CGI is a specialist in test automation architectures and test automation strategies. Together they are realigning the topic of quality assurance at DB Netz AG, with a focus on a future-proof test strategy and continuous testing.

QA and Test DB Networks

Bettina Buchholz

Tom Kober

Andreas Neumeister

What challenges will software testing have to face in the future?

Bettina Buchholz: In the past, there were dedicated testers who were responsible for "quality". Nowadays, we don't talk about testers anymore, but quality coaches, whose job it is to get the quality mindset into the agile teams. In doing so, they help the development teams and product owners to integrate the understanding of testing into each stage of the SDLC and to detect defects early using shift-left. At some point in the future, there will be no more Quality Coaches and Quality Engineers, as every single person involved in software development will intuitively pay attention to Quality Assurance and Continuous Testing. A continuous quality culture will be established.
In the future, testing activities will no longer be perceived as a burden/additional work, which is still often the case today. They will become an integral part of the toolchain. The quality of the software product will be tested intuitively and automatically with every single software development activity.

Andreas Neumeister: As the degree of automation will continue to increase strongly in the future, previously required manual efforts will be freed up for other important topics. These include: Security Testing, Portability Testing, Testing of Accessibility, High Availability and many other topics. In terms of test data generation, a mix of requirements-aware automated microservices and AI-driven data generation will become established. This will make many manual efforts in data requirements gathering, data generation and data manipulation obsolete. In the same breath, however, more effort must be invested in planning and building the test data strategy.

Tom Kober: Due to the current global situation, security vulnerabilities are of utmost importance. Therefore, testing must deal more closely with security aspects in order to avoid vulnerabilities at an early stage and in an integrative manner. In addition, new technologies and processes also require new testing approaches, which is why tests of serverless services, AI and machine learning, for example, will become increasingly important. This includes not only the development of test methods for these technologies, but also in general the resulting opportunities in software testing.
A big factor in designing a test automation architecture is the effort required to maintain and develop the automated tests. Self-healing tests and supporting test design tools already take care of this issue. However, these are usually not yet mature enough to create sustainable and reusable tests.

What ideas or solutions could address these challenges?

Tom Kober: Integrated and standardised scan tools enable proactive defect prevention and create better awareness for software quality and security through continuous integration even before a test environment is provided. Thus, valuable information for software quality can be shared among stakeholders and improvements can be implemented at an early stage. At the same time, compliance checks and standards can be defined on an organisation-specific basis through individual rulesets.
Through intelligent analysis options and associated views, better assumptions and more accurate tests can contribute to an improvement in quality assurance. As a result, testing efforts can be used in a more targeted manner, which can lead to faster test feedback or a reduction in costs, among other things.

Bettina Buchholz: Machine learning will increasingly become a relevant part of software development. Testing activities are still perceived as additional work today. Machine Learning will increase the acceptance of software quality and software testing activities and ideally make them a matter of course.
In this context, test processes must be integrated with all activities therein, for example in CI/CD pipelines, covering all test stages and test types, so that there is almost complete automation.
However, I see the biggest challenge in switching the mindset and establishing a continuous quality culture. Today, we think too much in terms of "shift-left and shift-right" approaches. We need to move towards "Quality Overall".

Andreas Neumeister: In the sense of the quality culture described above, development, security, operations and quality assurance will become more closely intertwined. This leads to a development of the skillset of the employees in the projects, but also to a further development of the technical procedures for these areas. Particularly with regard to the increasing degree of automation and the use of AI technologies, the clean development of test strategies, including automation and data, will become more and more important. This is particularly helpful when carrying out comprehensive integration tests across heterogeneous system landscapes. Since companies and technologies are constantly evolving over time, the ability to test continuously and across technologies and systems is of growing importance.

What does Future Testing look like? How will we test?

Tom Kober: Open source tools are becoming more and more widespread in connection with container-based test applications and form a cornerstone for the test infrastructure of the future. This enables the sustainable use of test automation tools and reduces the initial costs incurred in developing the test infrastructure. Only local test tools are still used for test development and static test environments are only used for manual tests and the development of automated tests. Due to the high degree of automation associated with this, special attention must be paid to reusability so that these efforts can also be amortised.

Bettina Buchholz: I think we are well on the way to the Future of Testing. We have become much faster in test execution, but the feedback cycles are still far too long.
If we look in the direction of machine learning and AI, completely new possibilities for testing arise.
Test cases and test suites will have to become more maintainable or, ideally, maintain themselves. AI will make it possible for test cases to learn for themselves whether and in what form they are needed, and what the needs of the user or the system under test are.
Experience-based testing" is also relevant for a risk-based testing approach, and AI will support us much more here in the future. For example, in the future, test data will be reproduced from previous test executions based on experience, or test cases will be designed automatically based on evaluations of previous error frequencies. Test automation will also identify and correct error conditions in its own system in order to eliminate sources of error from its own system. Quality assurance becomes a constant companion that is perceived as a support in software development.

Andreas Neumeister: In addition, future AI quality assurance systems will analyse user behaviour in existing systems. In this way, errors and chess points will be identified, repaired by the system itself and then tested automatically along basic quality assurance guidelines, as well as the usual user behaviour. Thanks to good monitoring capabilities, quality assurance is shifted more into the operations area. To make this possible and accordingly reduce the time-to-market for new products and features, sustainable analysis and monitoring functionalities have to be designed and established. Knowledge about the function and state of a system in production is of fundamental importance for quality assurance in operations.

How can testers and test managers prepare for this today?

Andreas Neumeister: Testers and test managers should regularly reflect on their test procedures, preferably also in the entire development team, and implement any potential for optimisation that is found. In addition, they should exchange ideas with colleagues from other projects and read success stories from other quality assurance projects. Furthermore, they should constantly educate themselves in the fast-changing world. The quality assurance procedure of 5 years ago is no longer up to date today. Since automation is becoming more and more important for the future, test managers and testers should already start thinking about the topic in broad terms today. It is not about being able to implement automation technically. Automation potential must be recognised early on in order to be able to set up an automation strategy for one's own project.

Tom Kober: It is not only important to share the understanding of testing within the team, but also to involve testers and test managers in the different processes and technologies used in software development and projects. This promotes the exchange between different stakeholders and thus also the awareness of software quality is passed on and internalised. This is essential to take the first step towards a collective software quality perception. Only in this way can the state-of-the-art technologies of this time develop into new software testing innovations in conjunction with proven testing practices.
Already today, there is a claim that test automators are no longer only responsible for their tests, but also for the automated test execution and integration of their tests into the SDLC. It is therefore important that they deal with topics such as DevOps, CICD and cloud platforms in order to create a holistic Dev, Ops and Test understanding.

Bettina Buchholz: From my point of view, the first step is that we should not be afraid of trying new things and that we should also be able to fail. Only by making mistakes can we improve.
Our main task at the moment should be to help the team members, product owners and project managers of this world to build up an understanding of Quality Assurance. To support as a coach the mindset switch towards a Quality Culture.
As Tom Kober already indicated: from a technical point of view we testers need to get more involved with CI/CD and Continuous Testing. We need to find a way to make testing an integral part of the SDLC. Only if we manage to do this, we make it easier for the non-testing team members to get into the topic and towards the development of a tester mindset. In this way, the basis for a future quality culture can be created.