Agile QA – what is needed for greater flexibility and speed?
Agile quality assurance is a term which many technology teams have heard. In the following statement, I will be sharing what QA in an agile team looks like, and how you can release at pace with the same software quality.
Firstly, when a team details that they would like to be more agile and deliver updates more frequently, it can scare a QA team. They will envisage that they will need to test a code base that changes daily with no breaks and not enough time for each.
Is it so? Let’s answer this question together.
What about Agile manifesto?
You may have also heard the myth that companies get rid of QA when they are trying to move towards agile. This is incorrect. You will need to focus more on quality if you are adopting agile.
In an agile team, everyone is responsible for quality. The goal is not just finding bugs and defects, but also preventing them during the development cycle.
How can QA meet the agile manifesto?
4 key aspects that I have used to follow QA in an agile form include:
- Add QA documentation where it brings value.
- Always look for automation opportunities.
- Always look into automation tools, thus making your testing more efficient, repeatable, and easier-to-track.
- Understand your customers and ensure that you know the quality level they expect. Also, the double bonus, you will be automating smartly — the right things.
I have touched on automation in the above — automation is key as you have guide rails, so a good opportunity to react quickly to changing priorities and have a constant quality measure.
QA should be involved throughout the whole agile process. They should be a part of the team. The key to this is pairing on a task and discussing how a story should be tested. If we involve QA earlier, why not then shift QA left and have more of a chance to meet the delivery at high-quality considerations?
8 key tips for QA members working in an agile team
1. Join the agile team and work together
- Standup, retros, demos, planning sessions.
2. Focus on the existing methodologies
- Learn how your customer uses the product and prioritise what you test.
3. Automate your key tests
- Black box testing and working with engineering so you pair on automation.
4. Test manually for the right reasons
- Exploratory testing and always asking the ‘What if’ questions.
5. Continually improve
- Build maintainable and non-flaky test suites.
6. You must have excellent product knowledge
- Collaborate with your product team and learn about the product.
7. Shift left
- Test as early as possible and in smaller chunks.
8. Shift right
- Look to monitor, identify, investigate and remediate based on real-world scenarios and conditions.
The QA team is not the gatekeeper of the quality of a software product. The whole TEAM is responsible.
The agile QA process: 9 steps
QA should be involved in all of the above and think of ways to implement them with more automated processes or faster feedback loops.
What is important? To reflect, refine, improve, and progress with enhancing processes. Following agile is never easy, though, my advice is — by adding more value with, let’s say, automation it will make a massive difference.