Tuesday, March 9, 2010

Unsung Features of a Web Form Generator: testability

As part of a performance test I was doing recently, I had to put together some Webtests for a non-Metawidget-based UI. It was a painful experience, and reminded me of an important feature of Metawidget I haven't blogged about before: consistent, predictable ids.

Because Metawidget generates your widgets, it also generates your widget ids. And it can do a much more thorough job of naming these ids in a consistent, predictable manner than any human developer. This makes writing tests for your UIs much easier, because you know (or can deduce) what all your field ids will be in advance:
  • No more using Firefox and Firebug to look up the name of every single field as you go: once you know the first couple, the rest just follow suit.
  • No more getting halfway through writing your test case only to find you've forgotten to sensibly name one of your fields and have to go back and update the app code.
  • No more back-and-forth between the dev team and the test team as to what the field naming convention should be, or where someone hasn't followed it.
In short, less time spent mucking about with the plumbing and more time Getting Stuff Done.