TestRelic for Appium
Welcome to TestRelic for Appium — the AI-driven Testing Observability Platform that captures device logs, WebDriver commands, network traffic, and screenshots from your Appium mobile tests.
TestRelic is an AI-driven Testing Observability Platform for engineering teams. The Appium SDK reporter captures rich test analytics from your Android and iOS mobile test runs and sends them to a cloud platform for AI analysis, monitoring, and integrations.
| Layer | What it is | Where it runs |
|---|---|---|
@testrelic/appium-analytics | WebdriverIO service + reporter — captures device logs, WebDriver commands, network traffic, screenshots, video, and CI metadata | Locally, alongside your Appium tests |
| Cloud Platform | Dashboard for visualizing test data, running AI analysis, monitoring quality gates, and connecting tools | testrelic.ai |
What does @testrelic/appium-analytics capture?
Add TestRelicService and TestRelicReporter to your wdio.conf.ts and they automatically:
- Capture every WebDriver command with timing, arguments, and category.
- Stream Android logcat and iOS syslog device logs per test.
- Intercept HTTP network traffic via CDP (Android),
safariNetwork(iOS), or proxy fallback. - Record device screenshots after every test, only on failure, or never.
- Record full screen video (optional).
- Detect CI environment context (GitHub Actions, GitLab CI, Jenkins, CircleCI).
- Upload structured test run data to the TestRelic cloud platform.
- Generate self-contained interactive HTML reports for offline use.
Requirements:
- Node.js ≥ 18 (Appium 3.x requires ≥ 20.19)
- WebdriverIO ≥ 9.0.0
- Appium 3.x
npm install @testrelic/appium-analytics
npm install --save-dev webdriverio @wdio/reporterUse your AI assistant
Install @testrelic/appium-analytics in this WebdriverIO project and configure wdio.conf.ts:
- Add TestRelicService (from '@testrelic/appium-analytics/service') to services
with includeDeviceLogs: true and screenshotOnEvery: 'failure'
- Add TestRelicReporter (from '@testrelic/appium-analytics') to reporters
with outputPath: './test-results/testrelic-timeline.json' and openReport: true
- Add an onComplete hook: await TestRelicReporter.finalize(process.cwd())
Show me the complete updated wdio.conf.ts.What the report shows
The overview opens with a verdict band — what broke, in a sentence, with a proportion bar — then tiles for what this run actually captured, then a needs-attention block that leads with the failing step and the device-log line recorded beside it. That correlation comes from timestamps the command log and the log stream both already carried.
- Device strip — the eight fields detected from the W3C capabilities: platform and version, device name, driver, app under test, native or webview mode, UDID. Rows and the detail header carry a device badge. Because the platform is a field of its own, it is no longer appended to your tag list.
- Step kinds — all eleven command categories badged separately, so a swipe, an app launch, a keypress and a screenshot no longer render identically, with a breakdown of the run by kind. The four-bucket
categorythe cloud timeline and Ask AI filters read is unchanged. - Device logs with provenance — each line keeps its source, tag, pid and stack trace, so a crash-log entry is distinguishable from ordinary logcat chatter.
- Replay — the screen recording with a scrubber marked once per step; clicking a step seeks the video.
- Screenshot strip — every screenshot the test captured, in capture order, not just the first.
Cloud Platform
The TestRelic cloud platform (testrelic.ai) receives data from the SDK reporter and provides:
- Test Runs Dashboard — Run history with CI badges, filters, and session drill-down.
- Session Workspace — Inspect device commands, logs, screenshots, network traffic, and video timeline.
- AI Intelligence — Ask AI in natural language, get automated session insights, and generate test reports and plans.
- Monitoring — Smoke, regression, and nightly observatory dashboards for quality gates.
- Integrations — Native connections to GitHub Actions, Jira, Grafana Loki, and Amplitude.
See the Cloud Platform Overview for the full feature set.
Getting started
Local reporting only
Generate interactive HTML reports locally without the cloud platform:
- Install:
npm install @testrelic/appium-analytics - Add
TestRelicService+TestRelicReportertowdio.conf.ts - Run your tests — HTML reports are written to
./test-results/
With the cloud platform
Get AI insights, monitoring, and the full session workspace:
- Sign up at testrelic.ai
- Complete the onboarding wizard
- Add your API key to the reporter's
cloudconfig - Run your tests — data uploads automatically after
TestRelicReporter.finalize()
Plans
| Free | Growth ($19/mo) | Pro ($99/mo) | Enterprise | |
|---|---|---|---|---|
| SDK reporters (all frameworks) | ✓ | ✓ | ✓ | ✓ |
| Cloud platform | — | ✓ | ✓ | ✓ |
| Ask AI, AI Insights & CLI | — | ✓ | ✓ | ✓ |
| Studio | — | — | ✓ | ✓ |
| Storage | Local only | 1 GB | 10 GB | Unlimited |
| Data retention | Local only | 30 days | 90 days | Unlimited |
Testing with Playwright / browser?
For browser-based E2E testing with Playwright, see the Playwright overview.