| Recipe 38 | Drive a Mac GUI Using MacRuby and AXElements |
Problem
You want to test a Mac GUI, but you don’t want to use a bridge to AppleScript. Instead, you want to use an expressive Ruby-like API that will be easier to write and maintain.
Ingredients
-
AXElements,[251] a Ruby wrapper around the Apple Accessibility APIs
-
A nightly build of MacRuby,[252] an implementation of Ruby tied closely to the OS X runtime
-
Spinach,[253] a Cucumber-like framework that’s compatible with MacRuby
-
Command-Line Tools for Xcode[254] to compile AXElements
Solution
AXElements is an easy-to-use library for Mac GUI automation. Rather than relying on AppleScript like traditional Mac scripting projects do, AXElements calls directly into Apple-provided APIs for interacting ...