/fastlane-plugin-xcmonkey

Challenge your apps on iOS with monkey testing 📱🐒

Primary LanguageRubyMIT LicenseMIT

Description

This fastlane plugin is a wrapper for xcmonkey - a tool for doing stress testing of iOS apps.

It replicates xcmonkey test command.

Option Description Default
udid Set device UDID
bundle_id Set target bundle identifier
session_path Path where test session should be saved
event_count Set events count 60
exclude_taps Exclude taps from gestures list false
exclude_swipes Exclude swipes from gestures list false
exclude_presses Exclude presses from gestures list false
disable_simulator_keyboard Disable simulator keyboard false
ignore_crashes Ignore app crashes false
throttle Fixed delay between events in milliseconds 0

Prerequisites

brew install facebook/fb/idb-companion
pip3.6 install fb-idb

Getting Started

To get started with xcmonkey, add it to your project by running:

fastlane add_plugin xcmonkey

Usage

lane :test do
  bundle_id = 'com.apple.Maps'
  device = 'iPhone 14'
  sim = FastlaneCore::Simulator.all.filter { |d| d.name == device }.max_by(&:os_version)
  udid = sim.udid

  xcmonkey(udid: udid, bundle_id: bundle_id)
end