Being new to the Agile world, I am trying to figure out exactly where testing should fit in this model.
Waterfall testing is clear – you test the final product at the end of the development cycle, report bugs, test bug fixes and sign off on testing. Agile approaches things a little differently. Documents aren’t always finished before the project starts, the product isn’t finished before you start testing, and the very things you are testing can change quickly. Agile Development is in vogue – but where does good testing fit in that schedule?
I am learning that effective agile testing has the same principal as waterfall: testing quickly and early. The difference is in how you arrange your test schedule around development sprints, instead of grouped together at the end. Adjust your test plan into mini-test plans based on milestones. Treat each milestone as a whole project that needs to be tested. At the end, you can run through all the test cases again to test the complete functionality, but each step along the way has been tested as completely as if it were a stand alone product.
Get involved in the process at the kick off meeting, talk to the developers, pop into daily stand ups when you have time, ask questions and listen to how they talk about what they are working on. Does it seem like certain parts of functionality are giving them a hard time? Take note. If you listen to your team, they will tell you the problem areas, the parts that were rushed, the developers who weren’t talking very much while they were working. It gives you some red flags to look at when designing your test plans.
Agile Development promises more transparency in the development process – we can include QA in that. Open up test plans and test cases for review. Ask developers to sign off your coverage, give them a chance to make suggestions. It gives you a chance to learn from them, but it also makes them aware of how you test and what you look for. Quality becomes a group goal.
This is a great video from youtube on the differences between agile and waterfall development, which is a great overview. I initially found the video on this blog, which also has lots of info on Agile Testing.