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.
Quality at Speed with Continuous Testing:
Principals of Continuous 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).
Moving from Quality Assurance toward Quality Assistance
  • 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.
Testers should Desire continuous learning.
  • 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.