Friday April 26, 2013

GSAutomation - Simple Test Runner For UI Automation by the Hulu Tech Team

Bao Lei gave a nice writeup of Hulu’s GSAutomation test runner for UI Automation. Rather than use the UI Automation JavaScript API itself to write tests they developed a domain language, of sorts, that expresses test steps as a series of arrays. The example looks something like this:

task = [
  [Tap, "Button"],
  [Check, "Text I'm expecting", "Text I'm expecting from another label"],
]

Yes, this can lead to oversimplified test steps and you’re leaving behind a lot of the raw power of looking up and interacting with UIAElement objects directly, but I think it’s an interesting technique and could cover a lot of common test cases.

And, hey, it kinda reminds me of Lisp. :)