Here's basic ATFTest application that I have used to evaluate automated test frameworks. It is basically calculator application which emulates application changes which should not brake test cases.
1. Calculator functionality is used to ensure test cases
- contains buttons (operations + numbers) and textfield (result)
- test case used components contain * unique * PIDs which ATF should use
- ATF test case consists of pushing calculator buttons and reading correct result from textfield
2. Layouts are randomized
- any component can be located randomly under panel, tabsheet, grid, orderedlayout etc.
- ATF should find component even if it's relocated
3. All component captions have identical names (or randomized)
- captions are changed with multilingual applications, such as ROP and Rondo R8
- ATF should not use on captions
4. Random components are dispersed to the application
- these are just "noise", PIDs may change
- ATF should not be affected of these