Agile in Software Development is all about Value-Driven Development. Most of the Software Development companies are now following agile practices. Working in agile environment involves Continuous Learning, Discipline & Collaboration. A mind-shift is needed for testers to sustain Agile Teams:
Preventing the defects over Identifying the defects:
- Rather than finding the defects, the focus of the tester should be on preventing defects and helping the team in delivering quality software which generates value for the customers.
- Pair with the developers in the team and finalize the test scenarios. The idea is – Both team members (developers & testers) should ensure all scenarios are covered during development so that there should not be any surprises when the testers start testing.
Test early – to reduce the risks
Test often, faster and automate: Automate the tests so that tests get executes after every code check-in & get quicker feedback on the health of the software.
Continuous testing is required to reduce uncertainty and risks & achieve Continuously delivery
*Testers should think about ways to minimize the time spent on Manual UI testing and focus more on Continuous testing.
Be a Full Stack Tester:
- Testers should keep growing their skills to match the new tech stack. How to test new technologies
- Consider Non-Functional Aspects (Performance, Security, etc.)
- Involvement in Design Discussions: Testers should understand the design, provide inputs on workflow, database design, test-ability so that unknowns can be identified as early as possible.
- Understand the architecture: Testers should understand the architecture of the of software – the way it is designed how various layers are interacting with each other (UI, Database, API, etc.).
- Learn – How testers can help in achieving continuous delivery (API, UI Automation & understand the who, what, when, why of Continuous delivery).
- The entire team is responsible for Quality. A tester assists the team in ensuring that a quality software is being developed. The Focus should be on how team members should help each other to meet the team goals/sprint commitments.
- Always find better ways to work – Introspect and learn
- Failures should be viewed as learning opportunities.
Hope this helps. We will talk more on these topics in details in upcoming posts.