Home

Awesome

appium_lib

Gem Version

Downloads

Helper methods for writing cross platform (iOS, Android) tests in Ruby using Appium. Note that user waits should not exceed 120 seconds if they're going to run on Sauce Labs.

Recommend to use ruby_lib_core, which works as a Ruby client for Appium. ruby_lib wraps the core library with some additional helpful methods, but some of wrapped methods may have unexpected complexity. Ordinary, ruby_lib worked with class driver, $driver, mainly. We can avoid the class driver with current ruby_lib, but if you'd like to implement your test cases based on instance driver, @driver, you can consider using ruby_lib_core first.

Setup

Requirement

Ruby Lib and Appium

Start appium server

Appium 2

$ npm install --location=global appium
$ appium driver install xcuitest  # proper driver name to install
$ appium server

Note Please set server_url properly like the below since the appium 2 changed the default WebDriver URL to without /wd/hub to follow W3C.

 opts = {
   caps: {
     automationName: 'xcuitest'
     platformName: 'ios',
     app: '/path/to/MyiOS.app'
   },
   appium_lib: {
     server_url: 'http://127.0.0.1:4723'
   }
 }
 appium_driver = Appium::Driver.new(opts)
 appium_driver.start_driver

Or please start the appium server with appium server --base-path=/wd/hub

Appium 1

$ npm install -g appium
$ appium

Install / Upgrade

gem install appium_lib

Sauce Labs env vars

(Note: If these variables are set, all tests will use Sauce Labs unless over-ridden in configuration.)

Documentation

Related libraries

Load Pry

Pry.config.pager = false is set if you have no .pryrc files and Pry is defined.

Run tests in parallel

This repository has examples for running tests in parallel. Read ios_tests to see them.

Contribute

How to add new commands for driver

How to add new helpful methods