RAutomation - Automate windows and their controls through user-
friendly API with Ruby.
RAutomation is a small and easy to use library for helping out to
automate windows and their controls
for automated testing.
RAutomation provides:
- Easy to use and user-friendly API (inspired by Watir
http://www.watir.com) - Cross-platform compatibility
- Easy extensibility - with small scripting effort it’s possible to
add support for not yet
supported platforms or technologies
Usage:
require "rautomation"
window = RAutomation::Window.new(:title => /part of the title/i)
window.exists? # => true
window.title # => "blah blah part Of the title blah"
window.text # => "Lorem ipsum dolor sit amet, consectetur
adipiscing elit. Donec ultricies…"
window.text_field(:class => "Edit", :index => 0).set "hello,
world!"
button = window.button(:text => “&Save”)
button.exists? # => true
button.click
window2 = RAutomation::Window.new(:title => "Other
Title", :adapter => :autoit) # use AutoIt adapter
# use adapter’s (in this case AutoIt’s) internal methods not part
of the public API directly
window2.WinClose(“[TITLE:Other Title]”)
Check out the documentation for other possible usages!
RAutomation makes it easy to develop new adapters for different kind
of platforms and windows. Currently only adapters for the Windows
operating system are developed by using ffi (with Windows API) and
autoit adapters.
If you’re Linux and/or OS X enthusiast and know how to fulfill
RAutomation’s API needs with some programming tricks or external tools/
API-s for these platforms and are willing to help then don’t hesitate
to create a new adapter. Read “How to create a new adapter?” section
from the README [1] or let me know about your ideas.
Install it with gem install rautomation
.
Check out the source code at GitHub - jarmo/RAutomation: RAutomation
[1] https://github.com/jarmo/RAutomation/blob/master/README.rdoc
Jarmo P.