Android and iOS apps
Test your app on an iPhone or an Android device: upload a build, write the test the same way, and get the same proof.
Builds#
Upload a build to the project (App builds → Upload a build, or from CI):
- Android: an
.apk, with arm64-v8a native code if it has any. App Bundles (.aab) cannot be installed: upload an APK (debug or release, or a universal APK from bundletool). - iOS: a build for the iOS Simulator, with the
.appfolder zipped (MyApp.app.zip). On a Mac, right-click the .app → Compress. - Up to 1 GB, uploaded in parts.
Each build is checked when it arrives: its package name or bundle id, version and build number, and whether our devices can run it. A build they cannot run is refused with the reason.
Write the test#
Choose Android or iOS in New test, pick the app, and describe the test as for a website: "Sign in with the stored account \"customer\" and check the home screen greets them by first name." There is no start address: the run starts in the app, with fresh app data each run.
A test runs its app's newest build unless it pins one (Always a chosen version), or uses a build link downloaded on every run. Two phones gives a run a second device, for tests where two people use the app.
Run on a new build#
Run with a new build on a result uploads a build and runs the test on it once it is checked. In CI, qa-ai run --build app-debug.apk uploads the build and runs the project's app tests on it.
What you get#
The same result as a website test, with the device frame, each tap drawn on the replay and the video, and the device log. App tests are included on every plan, the free trial too, and an app run counts as one run.