FitNesse - test specification by the end user
An important part of testing is the creation of tests that relate to the actual and intended use by the customer/s. In order to create user story based tests several sources can be used, some of them being:
Intervues
Scientific studies
Articles
Customer/user forum threads
Beta-testing
A keyword-based testing framework provides an additional source: descicion tables with keywords that are easy to understand even for non technical people outside the development organisation.
This of course is dependent on the testing/development organisation creating said keywords in a manner that makes it easy for an outsider to interpret and use them.
If time and energy is put into the creation of a "testing language" that a trusted customer can use, that customer can provide the tests that they deem most important. Since this language is at a high abstraction layer the underlying technicalities such as drivers and code hooks can be changed without the test having to be re-written.
An cavaet emptor is appropriate: if you intend to go down this road, the language you create must be easy to read/write/understand, unambigous and well documented. If you change the meaning of a word (a new implementation with another outcome) you will have to communicate that change to all who write tests and also go through old tests and make sure they still test what they where intended to test. Then again, that might not be to different from any other approach with old scripted tests that are being reused...








