In our first blog of the 3 series "First aid for testing in Agile environment" we discussed the importance of an all round tester and the "baggage" this tester needs to have in order to test in an Agile environment. Besides the all round tester, a commitment to the testing process is important. What is meant by this? The scrum teams must commit to the same test process to make it possible to carry out cross-team chain and regression tests. This becomes even more important when the execution of the tests is automated. To achieve this within all teams, it is essential to involve management in the testing strategy.
In the previous tip about testing in an Agile environment, we talked about the importance of an all round tester within each scrum team. This tester must follow the testing process as defined in the testing strategy. Make sure management is involved in defining that testing strategy. This will give them insight into the business risks in relation to the testing approach. It is essential for management to know this so that adjustments can be made if necessary, given the business risks. Especially in an Agile environment it is necessary to keep management continuously involved in the testing strategy. In an Agile environment, there are many dynamics and changes.
If changes take place, a risk analysis should determine how big the business risks of the changes will be. Changes with a high chance of business damage will be tested more heavily than changes with a low risk. But how should testing be carried out? This is laid down in the testing strategy. It may happen that changes have to be tested using special test specification techniques. Secondly, the test strategy must clearly state the requirements for test scripts. Think about the level of detail, the test data and environments, the recording of results and the handling of test findings. As indicated earlier, it is important that the testing strategy is clearly communicated to management. The ultimate goal of Agile working will be to deliver added value to the business. Therefore, ensure good cooperation and communication between IT and the business.
The Agile Manifesto states that human interaction is above processes and that responding to change is above following a plan. As a result, adhering to a testing strategy in an Agile environment runs counter to the Agile Manifesto.
"Our experience shows that each team uses its own testing approach. This is not desirable, given the business risks this creates."
When every team has a different test approach, it is difficult to keep an overview. In addition, you do not know whether sufficient testing is taking place and business risks may increase. Therefore, make sure that the test approach is accurately described in the test strategy, and that each team is aware of this.
More and more companies want automated testing. Also from this point of view, following the testing process as described in the testing strategy is very important. In an Agile environment (and certainly in a DevOps environment), the automated execution of tests is a must. This applies even more to the execution of the regression or chain test. This is because these types of tests often involve multiple teams. In order to maintain these tests properly, it is necessary that the changes developed by the teams are processed in the regression test in an unambiguous manner. Where do the tests touch each other within the sprints? What does the composition look like? Each team must have insight in the composition of these test sets. In addition, each team must know how test automation is carried out and how they must provide input.
Of course, the testing strategy itself is also subject to change within an Agile environment. This means that the testing strategy should be reviewed at regular intervals and adjusted where necessary. Do this in consultation with management. Subsequently, the adjustments are communicated by management to the scrum teams. By doing so, you realise that everything is streamlined and that there is consistency. In this way, management knows what the testing process looks like and can correctly interpret the test reports.
This is the second blog of the 3-series "First Aid for Testing in Agile Environment". Go to blog 3.
Follow us on LinkedIn to get the latest tip on testing in an Agile environment.