Skip to content

misttar/ruby_lib

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

473 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

appium_lib Gem VersionDependency Status

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.

Make sure you're using Ruby 1.9.3+ with upgraded rubygems and bundler.

Start appium server

node server.js

Install / Upgrade

Update rubygems and bundler.

gem update --system ;\
gem update bundler

Install the latest gem release.

gem uninstall -aIx appium_lib ;\
gem install --no-rdoc --no-ri appium_lib

Simple Usage

require 'rubygems'
require 'appium_lib'

# Start iOS driver
app = { device: :ios, app_path: '/path/to/MyiOS.app'}
Appium::Driver.new(app).start_driver

# Start Android driver
apk = { 
        device: :android
        app_path: '/path/to/the.apk',
        app_package: 'com.example.pkg',
        app_activity: '.act.Start',
        app_wait_activity: '.act.Start'
      }
Appium::Driver.new(apk).start_driver

# Define the methods on all objects.
Appium.promote_appium_methods Object
# Example of automating Settings preinstalled app on Android
# Find these values using arc then type current_app
apk = { 
        device: :android
        app_path: '',
        app_package: 'com.android.settings',
        app_activity: '.Settings',
        app_wait_activity: '.Settings'
      }
Appium::Driver.new(apk).start_driver

iOS env vars

  • APP_PATH Path to the .app folder

Android env vars

  • APP_PATH Path to the apk
  • APP_PACKAGE The APK's package
  • APP_ACTIVITY Activity to start
  • APP_WAIT_ACTIVITY Optional. Activity to wait for.

Sauce Labs env vars

  • APP_NAME Name of the test run
  • SAUCE_USERNAME Sauce username
  • SAUCE_ACCESS_KEY Sauce API key

Troubleshooting

  1. Does adb kill-server; adb devices list an active Android device?
  2. Have you defined the proper env vars? APP_PATH, APP_PACKAGE, APP_ACTIVITY, APP_WAIT_ACTIVITY
  3. Are you running appium from source? node server.js

Documentation

About

Ruby library for Appium

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • Ruby 100.0%