HTML5 Robot is based on a series of best practices for how to reliably lookup and interact with components based on attributes and conditions which are not dynamic. It then provides shortcuts for doing this with all of the HTML, Ext JS, and Sencha Touch components that you would need to interact with. It comes in 2 flavors:
- Java - Familiar Selenium and JUnit based API that has built in web driver support for all modern browsers.
- Gwen - A human style language for quickly and easily creating and maintaining browser tests, which comes with its own integrated development environment. All of which is based on the Java API.
...and you could do the following in Gwen:
click extjsdialogbutton by id "OK"
It includes extensive documentation in both Java and Gwen, outputs JUnit and its own HTML-style reports, and integrates with any build and continuous integration tool such as Ant, Gradle, and Jenkins.
You can download the entire thing for free and check it out. Let me know if you have any questions.