Skip to content

tester-army/mobile-example

Repository files navigation

TesterArmy Mobile Testing Example

Example Expo app demonstrating TesterArmy's AI-powered mobile testing. Built with Expo SDK 54, React Native 0.81, and React 19.

TesterArmy runs your app on cloud simulators and uses AI agents to click through it like real users — catching regressions without brittle selector-based tests.

Prerequisites

Getting Started

npm install
npx expo start

See Expo docs for emulator/simulator setup.

Building for iOS Simulator

Generate the native project and build a simulator binary:

# Generate native iOS project
npx expo prebuild --platform ios

# Build for simulator
xcodebuild -workspace ios/testerarmy.xcworkspace \
  -scheme testerarmy \
  -configuration Debug \
  -sdk iphonesimulator \
  -derivedDataPath build \
  build

# The built app bundle will be available at:
# build/Build/Products/Debug-iphonesimulator/testerarmy.app

The shared GitHub Action can upload the .app bundle directory directly, so you do not need to zip it first.

Running Tests in GitHub Actions

This repo uses .github/workflows/test-mobile-app.yml to build the iOS simulator app and run TesterArmy automatically with tester-army/mobile-github-action@v1.0.1.

1. Add the required GitHub secrets

Secret Description
TESTERARMY_API_KEY API key from Team Settings → API Keys
TESTERARMY_PROJECT_ID Your TesterArmy project ID
TESTERARMY_WEBHOOK_URL Group webhook URL (includes secret)

2. Use the action in your workflow

After building your .app bundle or downloading it from a previous job, call the shared action:

- name: Upload app and run TesterArmy tests
  id: mobile
  uses: tester-army/mobile-github-action@v1.0.1
  with:
    app_path: .build/testerarmy.app
    api_key: ${{ secrets.TESTERARMY_API_KEY }}
    project_id: ${{ secrets.TESTERARMY_PROJECT_ID }}
    webhook_url: ${{ secrets.TESTERARMY_WEBHOOK_URL }}
    delete_app_after_run: "true"
    remove_after: "3600"

The action handles the full mobile flow for you: upload the app, trigger your test group through the webhook, wait for the runs to finish, and delete the uploaded app afterward.

3. Trigger the workflow

This example workflow runs on pull requests, on pushes to main, and manually through workflow_dispatch.

You do not need to upload the app in the TesterArmy dashboard or call the upload API yourself unless you want a custom integration outside GitHub Actions.

Writing Tests

Create tests in the TesterArmy dashboard with step-by-step prompts. Guide the agent like you would a human user.

Weak prompt: "Check the explore tab"

Strong prompt: "Tap the Explore tab at the bottom, scroll down to the 'File-based routing' section, tap to expand it, verify the content is visible"

Both work, but specific prompts produce more reliable tests.

CI Notes

The full example lives in .github/workflows/test-mobile-app.yml. It builds the app on macos-latest, passes the .app artifact to a Linux job, and then runs the shared TesterArmy action there.

See the CI Integration guide for more details and additional workflow patterns.

Links

About

Mobile example for Expo

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors