Summary
Specification workshops, wishful thinking, and collaboration add so much to your overall testing concert. First, to make sure that your team builds the right thing, you talk to your customer. By working closely together on the acceptance criteria you form a ubiquitous understanding in your team.
Starting from the business user goals, you apply wishful thinking to form the API that you wished your application had. You build your automated tests then against this API that will support all the testability functions that you will need. Your application becomes testable with automated tests by definition and at the same time you make sure that your tests don’t get too coupled to the actual implementation of the user interface.
Finally, a thing we all need to remember from time to time is we are not alone in software development. That means that we may work together with others for support when our work gets tough. This especially holds true when you work on a team that is new to agile development and consists of many specialists. In order to perform on a higher level, you will need to work with your teammates to learn some of their special skills. Over time you will be able to compensate for vacation times and sick leaves if you can replace each other.