Effective testing should be an integrated part of agile development. Various agile testing practices, such as ATDD, TDD, and exploratory testing, have been introduced. In practice it's not clear how to combine these effectively. Agile testing requires various skills and has to be done in parallel with development. Right balance between risk and cost is needed to achieve this. In this workshop we explore the testing activities required to get the feature done.
Format and length:
Tutorial, 90 minutes
It is recommended to bring your own laptop to this session. Latest Java should be installed. However, only half of the participants need laptop, because we will be working in pairs. Therefore it's okay to come without a laptop, if you don't have one with you.
Intended audience and prerequisites:
Understanding of ATDD (Acceptance Test Driven Development) and exploratory testing. No need to master in practice, but should be familiar with the concept.
Should have seen code before and implemented Hello World with some language. No need to be a developer.
Intended for those who would consider themselves as agile team members (eg. developers, testers, business analysts).
Objective(s) of the session:
Testing is always a compromise between cost and risk. You could get best coverage by testing the whole application manually in real production environment after each change. Because that's not possible, you need to rely on different levels of automation. On the other hand, with automation you'll get best coverage by doing e2e acceptance tests, but that's expensive as well. Agile testing is about finding the right balance between different approaches.
We have seen, that it is common to concentrate too much on one practice like doing high coverage test automation without manual testing. The key to success, in our opinion, is to optimize the testing as a whole. To do this, expertize of business analysts, developers and testers is needed.
Benefits, for the participants and the presenters
for the participants:
- How to do effective testing by combining different practices
- Selecting suitable testing approaches for different problems
- Overall view of agile testing