Succeeding in an Agile Tester Role
Having worked in multiple agile teams in my experience so far, I have seen many a QA’s falter in the journey and failing to understand the essence of being an agile QA. This is attempt to aggregate traits that define an agile tester in somewhat black and white.
Look for the following signs and see if you relate to them
- You feel that the work on ground in mostly manual testing whereas you were hoping it to be a great deal of automation opportunity.
- The devs do not care for automated tests in the pipeline and keep checking in even if the build is broken
- There are considerable amount of defects found in production.
- Majority of release testing is manual.
- It’s a daily battle when it comes to owning and fixing regression test run failures.
- Test framework issues are blocking your progress and there is dependency on other to fix the same.
First things first, this is not a problem with the team neither with the ecosystem. If one or more of the above issues resonate with you, the problem is you. It’s time to do some introspection. Here are a few things to fix within to move in the right direction.
Definition of Done
We as QA’s own the product. How we do it, manual or automated is upto us. So there is no point thinking that we are being forced to do it manual. The problem in general missing priorities and having no clear and agreed definition of DONE with the whole team.
As testers, we should call it out clearly that a story is QA done only when it is automated and added to the regression pack. Till then, the team shouldn’t be counting the story points in velocity. Do it from day 1 of the project. In case, where you have joined the project mid way and this practice is missing, put a plan for the backlog and start doing it for active stories but do this without fail.
Automation ownership
Who should own automated tests? It has to be the whole TEAM and not just QA’s. The job of a QA is to drive the automation effort and push the team to contribute, fix, refactor and own it. Now unless you have the team involved in decision making while choosing your test stack, this can’t be achieved. Discuss and debate with the team on technology choices, and push the team to own it. Set rules, e.g. check-in not allowed on broken builds, devs should own and fix smoke failures etc.
Following agile testing practices
Your team needs to feel the difference on ground, in their day to day life. Obvious defects not leaking into deployed builds is a clear differentiator. Keeps the feedback cycle tight and the teams productivity high. How do you achieve this? Follow the proven practices — ensure clear acceptance criteria present on every story, make sure story kick off happens where you agree with devs on desired behaviour to be implemented, do dev box testing for completed stories. Remember the whole idea of agile is to get faster feedback and allow changes to tale place seamlessly.
Engineering skills
Writing good code is an art and you have to be really good at your craft. For that to happen you have to enjoy programming. If you are just a pattern follower, that will not work. Own your framework, own your tests, work hard to unblock yourself and not depend on others for handholding. Every QA member should be working towards ensuring a consistent test suite that is stable and reliable. Remember “Test code = code”.
Quality first mindset
The whole team needs to play a part in ensuring quality. Whether it is product owner following INVEST principle to write good user stories or devs writing unit/integration tests to ensure code quality or we as QA’s writing functional tests across application layer to ensure feature/behaviour of the application. We as QA’s should be driving, questioning, helping everyone in the team to focus on quality.
It’s a continuous journey, trying to be a better tester every single day. The above principles/ideas/practices have helped me a great deal succeeding as an Agile tester on my projects. Hope some of these help you as well. Happy reading!
What is TestVagrant?
We are Quality Consultants who help companies accelerate the time-to-market of a product/service by using intelligent & innovative testing solutions. Read the latest blogs on testing techniques, testing strategy and specifically on Mobile, API, and Web testing. Read our blogs at https://medium.com/testvagrant