Last week, the first TestWorks Conf was held in Amsterdam. This hands-on conference featured a plethora of test automation tools and allowed the participants to gain practical experience with them. Since we feel and expect that all participants will take next steps towards improving their test automation practices, we decided to take a glance into the future and discuss the future of testing and automation together with Alan Richardson.
In a series of blogposts, we would like to share parts of our vision on testing and automation in the near future. First stop will be: the role of the tester in 2020.
What is the role of the tester in 2020?
You can feel the change in the air. Many companies are starting with Agile, Scrum, DevOps and Continuous Delivery. Everyone is focused on delivering new business value faster. Software can be built and released a lot quicker than before. This has huge impact on old school testing strategies and professions. I often hear testing professionals asking their managers: Is my role as a tester still relevant? Do I need to become more technical? Is my job going to disappear?
The Xebia team took some time to collect thoughts and started several open discussions with Alan Richardson. One question we tried to answer was: "What the role of the tester is in 2020?".
Quality comes from quality minded people
We came to the conclusion that testers will stay around in 2020. Yet, testers should become aware that testing is a task that can be picked up by anyone. Not only by designated testers with quality informing or gatekeeping power. If you really care about your work, company, end product and end users, well… you test! Quality comes from quality minded people. Having a shared responsibility in the development team towards quality and doing testing well (together) will make a difference in 2020. We haven’t been able to define the tester role (or resource) since the sixties; why would we do that now? And, we don’t particularly like the word "tester", because it is treated as a resource type. We should think about people that have skillsets / qualities instead of being a mere (tester) resource.
Quality is in the eye of the beholder, so it is important that testing is done from different point of views. Development is getting more specialised in new technologies and frameworks . So, if we were to pick one skill testers should develop or possess, it would be being able to catch up and learn how to test these new technologies as soon as possible
We also discussed that the developers will never become good testers and testers will never become good coders. The truth lies somewhere in the middle. Besides delving into requirements and ensuring common understanding between stakeholders and development teams, testers will need to become more technical to understand the risks sooner rather than later. Otherwise, they will have a hard time in 2020.
The TestWorks Conf was a perfect example of (200) testers getting their hands dirty with test automation frameworks like Cucumber, FitNesse, Robot Framework, Serenity, Protractor, Mox, Gatling, Axini and Galen Framework.
Testing can be taught and can result in a cultural change. So developers too can learn to understand the risk in technical implementations. Being critical about your own code and issues that can come out of it is crucial for effective test automation. We also expect developers to reach out to stakeholders and validate that their implementation actually solves the problem.
Testing should really add value and deliver fast feedback to the team. Everything else delaying the feedback loop needs to be taken seriously and improved; delay holds back the required speed in the continuous delivery pipeline. We think that testing should occur alongside development to keep the feedback loops in testing as short as possible. Testing should not become the bottleneck for continuous delivery teams. It should help the teams decrease bugs in production and increase releases to production.
The activity of the tester in 2020 will focus more on continuous monitoring and reporting deviations in production. Monitoring the impact a code change has made is one of the most important activities in testing. It will help the organisation in visualising the real value of the solution. Like more users or sales, all depending on what quality attribute you want to measure and is valuable to measure.
Fix the root cause
Besides visualising the quality, testers should steer quality by actually solving the root cause of problems instead of informing about the symptoms. That can be either solving ambiguity in specifications or technical implementations like code complexity or redundancy. Making sure those problems will not happen again.
So what is the role of the tester 2020? The tester role has not been defined yet. Perhaps that would be a waste of effort. Yet, here are some guidelines for the tester to remain relevant and to gear up for the world in 2020:
- Steering continuous delivery teams towards quality instead of being a quality gatekeeper
- Delving into requirements and creating common understanding between stakeholders and development teams
- Monitoring impact of code changes in production
- Catching up and learning about new technology being used to understand technical risk
- Eliminating testing bottlenecks, improve slow feedback loops in continuous delivery pipelines
- Steering the team in solving root causes instead of fixing symptoms
And, perhaps most importantly, testing should become a social activity which involves each and everyone in the development team.
Stay tuned for another blogpost about the future of testing and automation. Next topic will be: The biggest problems in test automation.