GPT Driver User Guide
GPT Driver API
GPT Driver API
  • Welcome
  • Basics
    • Upload builds
      • Web UI
      • API
      • CI/CD Examples
        • Github Actions
        • Bitrise
        • GitLab CI
        • CodeMagic
        • Jenkins
        • Circle CI
    • Trigger tests
      • Web UI
      • API
      • API Examples
      • Physical-Device Examples
  • MORE
    • Webhooks
    • Screenshots
    • Meta Data
    • App launch parameters
    • Run existing Appium tests
    • Github Action Step Script
Powered by GitBook
On this page
  • How the service works
  • Prerequisites
  • Code examples
  • Capability reference (most common)
  • Running in CI (GitHub Actions)
  • Retrieving artifacts
  1. MORE

Run existing Appium tests

How the service works

  1. You create a remote session against our public appium gateway.

  2. The gateway matches your desired capabilities to an available Android emulator or iOS simulator.

  3. Your tests run exactly as they do locally; every command is proxied to the device in our cluster.

  4. When the session ends, logs, video and screenshots are stored for 14 days at a signed URL.

You do not need to upload the APK/IPA to us first, just host it at any HTTPS‑reachable location (S3 presigned URL, GitHub Releases, Artifactory, etc.) and reference it with the app capability.

Prerequisites

Requirement

Details

Notes

Appium client

≥ 2.x

Python, Java, JS, Ruby all supported

Public app URL

https://...

Must stay reachable for the test duration

Credentials

username / password

Will be provided by your account manager

Code examples

Python (Appium‑Python‑Client)

from appium import webdriver

caps = {
    "platformName": "Android",
    "deviceName": "Pixel_8_Pro",
    "platformVersion": "14",
    "automationName": "UiAutomator2",
    "app": "https://cdn.example.com/apps/MyApp-1.2.3.apk",
    "appPackage": "com.example.myapp",
    "appActivity": ".MainActivity"
}

remote_url = "https://<username>:<password>@appium.mobileboost.io/wd/hub"

driver = webdriver.Remote(remote_url, caps)

try:
    # your test steps
    driver.find_element("accessibility id", "login_button").click()
finally:
    driver.quit()

JavaScript (WebdriverIO)

wdio.conf.mjs

export const config = {
  user: '...',
  key: '...',
  hostname: 'appium.mobileboost.io',
  protocol: 'https',
  port: 443,
  path: '/wd/hub',

  capabilities: [{
    platformName: 'Android',
    'appium:deviceName': 'Pixel_7',
    'appium:platformVersion': '13',
    'appium:automationName': 'UiAutomator2',
    'appium:app': 'https://cdn.example.com/apps/MyApp-1.2.3.apk',
  }],
};

Capability reference (most common)

Capability

Required

Example

Description

platformName

yes

Android / iOS

Target OS

platformVersion

no

15 / 18.0

router picks closest match, we support 3 latest major versions

deviceName

no

Pixel_8

Model, default is Pixel_8 and Iphone_15_pro

app

yes

Public HTTPS URL

APK (Android) or ZIP (iOS) files are allowed

Running in CI (GitHub Actions)

name: Mobile UI Tests
on: [push]

jobs:
  test:
    runs-on: ubuntu-latest
    env:
      APPIUM_REMOTE_URL: https://${{ secrets.USER }}:${{ secrets.PASS }}@appium.mobileboost.io/wd/hub
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-python@v4
        with:
          python-version: '3.11'
      - run: pip install -r requirements.txt
      - run: pytest tests/mobile

Retrieving artifacts

When driver.quit() returns, the gateway emits a webhook (if configured) and exposes details for your test run. Webhooks

PreviousApp launch parametersNextGithub Action Step Script

Last updated 8 days ago