Test this app (autopilot)
qa_test_thisTest Android or iOS apps by building or locating the app, launching it on an emulator or simulator, running smoke and exploration flows, and generating reports with screenshots, logs, and UI dumps.
Instructions
Start here to test a mobile app (Android/iOS): finds or builds the app, picks an emulator/simulator, runs prepare > smoke > explore > report > suite as a job (mode:"execute", default; pass waitForCompletion:true or poll qa_job_status). mode:"plan" only plans, no side effects. One consent covers boot/install/build; every terminal state has a report. iOS without WDA: visual-only smoke.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "qa_test_this"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| goal | No | Default: smoke, then a suite ("smoke" is fastest). Presets explore/generateSuite/stopOnNeedsInput; explicit flags win. | |
| mode | No | execute (default, job) | plan (no side effects) | interactive (until the first question). | |
| device | No | ||
| approve | No | ||
| explore | No | execute: run guided exploration after the smoke. | |
| goalText | No | reproduce_bug: the bug/flow to focus on. | |
| platform | No | Force a platform (default inferred). | |
| consentId | No | ||
| fastSmoke | No | Launch + smoke only, no suite (ignored with goal/generateSuite). | |
| sessionId | No | Reuse a session. | |
| timeoutMs | No | waitForCompletion window (default 45000, max 50000; SWIPIUM_MAX_WAIT_MS raises both; larger values are clamped); still running after it > state:"running" + jobId, poll qa_job_status. | |
| projectRoot | No | ||
| responseMode | No | compact = summary + URIs only; kept as the session default for later calls. | |
| buildIfNeeded | No | Build from source when no artifact exists (default true). | |
| generateSuite | No | execute: also generate a POM suite from the run. | |
| allowOutsideRoot | No | ||
| preferRealDevice | No | Out of scope: returns PHYSICAL_DEVICE_UNSUPPORTED. | |
| stopOnNeedsInput | No | execute: ask for login/test data instead of testing pre-login only. | |
| waitForCompletion | No | execute: block until done (or timeoutMs). |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ok | No | ||
| mode | No | ||
| jobId | No | ||
| state | No | running | completed | blocked | unsafe | needs_input | ready | |
| consentId | No | ||
| reportUri | No | ||
| sessionId | No | ||
| requiresConsent | No |