-got my work visa today, so I can officially be in the country for 3 years, makes me feel fuzzy inside
So I’ve been informed that as the Acceptance Testing guru (i.e. the one who talks the loudest about it amongst the developers at work) I’ve been lined up to give a company presentation in a weeks time, nice to get lots of notice about such things. But really it’s got me on the thought train, wondering about what tools are so sorely missing from this space.
Fitnesse was a wonderful revelation when I started using it, going from a standing start to moving is great, but I’ve started to think that I’m just on a milk float. It takes me part of the way but not very quickly and not really in a manor that’s fit for purpose.
I personally love Fitnesse’s wiki interface, but then there aren’t many developers who don’t love things they can tinker with, and I think that’s where I was going wrong for so long. Fitnesse is only usable by the wrong group, the group that Alan Cooper calls the apologists.
The whole essence of good acceptance testing in intertwined into the following requirements:
- Must be in natural language
- Must be clear and concise and unambiguous
- Must be repeatable
- Must be automatable
the last two apply to any testing but are important to keep in mind when deciding what you want from an Acceptance test. If my test is not repeatable or automated I’m most likely never going to run it regularly, mainly because I’m lazy and so are most people when it comes to regression testing.
So given these points Fit and Fitnesse fits into the last 2, and the tests themselves fit point 2 but the first is only true after I’ve written the test page and saved. While I’m writing it up I’ve got all kinds of markup to obfuscate what I’m actually trying to lay down.
So everyone leaps to the natural conclusion that a WYSIWYG interface is what is needed. I would argue that there’s even more wrong because I’m going to add another point.
- Tests need to be editable by non computer literate business owners
The holy grail is a time when business owners can not only read and verify the tests but actually take part in their construction. And the biggest barrier to this is mental. Why should they have to learn a whole new tool and fit it in with their business routine to get the benefit.
So I want a different tool, a more integrated tool, I call it Test By Email
no seriously, imagine, I want to test something so I have a tool that formats an email for me, I ping it to the email server and it runs the test and sends me back a response. It also should get stored for running against future builds and forms the regression pack.
Ok so my brain maybe playing tricks and I’ll wake up tomorrow and think that this is a horrible idea. But I’ll keep it running round in the mean time.