GEB: Browser Automated Testing With Groovy

I’ve been writing tests with watir-webdriver, Ruby, and Cucumber for the past few months. Some tests have used the precursor to Cheezy’s pageobject gem,which is now deprecated, and though all the tests were still friendly to maintain, and eventually worked against Android and iOS simulators (via Appium), certain elements weren’t always accessible, and at times I wished we had something more compatible with the Java stack the company was using. Last night, I saw a presentation on GEB, and, though I must admit I was busy trying to set up and download some Groovy and Grails stuff at the same time to get ready for future hack sessions, GEB looked familiar and at times better.

GEB looks neat to me, here are some reasons why:

  • Support for any major testdriver and mobile testdrivers, too (pretty much the same as watir-webdriver)
  • Integrates well with a Java stack
  • Page Objects (The demonstrator showed some great applications, including making an object for the dashboard on a webapp and manipulating it using GEB)
  • Really good selectors. This is probably what really elevates this over watir-webdriver. There were some things watir-webdriver could not select easily, this looks much better.