If we talk about automating visual regression testing of web applications, there are some basic features which just cannot be absent in such a tool, that is:
- emulate a click,
- emulate a text input operation,
- compare screenshots retrieved during different runs,
- run the recorded test in another browser,
- add a new test step etc.
But it's some unique, unusual options which make real difference. Something to do with radically facilitating the regression testing process itself.
For example, Screenster, a visual test automation tool has a special command called 'Invoke script'. It allows adding a new test step in the middle of a recorded test, which executes another test on this step. It is really helpful if you need to perform an operation on some other location before proceeding with test steps on a current web page. A real-life example is undergoing an email verification when testing the registration feature - you need to go to your mailbox and click a link to move further. So, the Invoke Script feature is really helpful for more complicated regression testing automation scenarios.
And what awesome features have you learned about when trying test automation tools of your choice? Care to discuss them?