Helping exploratory testers prepare for Agile development iterations

Helping exploratory testers prepare for Agile development iterations

How can I get more testing done before development moves a story to QA? Is there anything I can do to be more prepared for when development moves the story to QA?

    Requires Free Membership to View

    When you register, you'll receive targeted emails designed to keep you informed of the most relevant information on Agile development, application security, testing & QA, software requirements, and more.

    Hannah Smalltree, Editorial Director

    By submitting your registration information to SearchSoftwareQuality.com you agree to receive email communications from TechTarget and TechTarget partners. We encourage you to read our Privacy Policy which contains important disclosures about how we collect and use your registration and other information. If you reside outside of the United States, by submitting this registration information you consent to having your personal data transferred to and processed in the United States. Your use of SearchSoftwareQuality.com is governed by our Terms of Use. You may contact us at webmaster@TechTarget.com.

In agile development, testing isn't a separate phase. Development begins with writing tests. Testers help customers articulate their user story and theme requirements by asking good questions about desirable and undesirable system behavior, and eliciting concrete examples. My team writes high level acceptance tests together on a whiteboard when we plan an iteration with our product owner.

These high-level tests give programmers a big picture about what code they need to write for a given user story. As coding begins, testers can start writing detailed executable tests, starting with the "happy path." As the "happy path" begins to work, we can write more complex test cases, including edge cases and boundary conditions. Testers and programmers collaborate to automate these tests as they go. As problems are discovered, the code is fixed immediately. Once a test passes, it is put into the continuous integration process as part of the regression suite.

Once coding is complete, testers do exploratory testing to learn more about the functionality and discover whether requirements may have been missed or misunderstood. Missed requirements may turn into new user stories, or they may be bugs that need to be fixed right away. Testers and other team members conduct any other testing needed, such as performance, security or usability testing. They demo the functionality to customers as each increment is completed. No story is "done" until all testing activities are complete.

By collaborating with the customers and the programmers throughout the iteration, from story planning to demos, testers can help their team deliver business value at a regular, maintainable pace.

This was first published in November 2010