Looking for the Fit / Fitnesse approach to GUI testing

I’ve been learning quite a bit about test frameworks, BDD and TDD lately. I saw Cucumber and Webrat in action at a startup led by a colleague and was very impressed. For HTML applications it’s definitely the way to go.

Several of my colleagues have a distrust of test languages like Cucumber and RSpec. Their point is that it’s better to write code in a real language. I understand their point but generally disagree. The value of Cucumber is that the language is deliberately very abstract, lacking in any kind of state and most definitely not Turing complete. This makes it easier to talk about, easier to re-use and prevents any crufty code sneaking into a spec.

Now I’m looking for BDD test frameworks for desktop GUI applications. So far I’ve been disappointed. This article tries to make the case that Fitnesse is applicable here but if anything it makes me 100% sure that FIT doesn’t fit. The sample table isn’t a set of declarations, it isn’t particularly human readable. It’s just a crappy programming language in disguise. If this is how people use BDD then I agree with my colleagues, I’d rather just write the tests in code.