Mobile app testing

Every ticket testedon iOS and Android.

Smoketest reads the ticket and the pull request, then works through the change on iOS simulators and Android emulators. You get the result and the recording on the ticket, with no device lab to run.

Book a callTalk to our founder. Test a real ticket the same day.
Acme › ACM-512In Progress
Open the invoice from the email link
Tapping the invoice link in the email opens that invoice in the app, even if the user has to sign in first.
Activity
SKSara K assigned this to Smoketest
Smoketest  Read the ticket, 4 comments, and PR #1311. The change touches email links and sign-in.
Ticket4 commentsPR #1311Playbook, 3 rules
Test plan4m 12s
1Tap the invoice link in the emailBothPassed
2Sign in with an email codeBothPassed
3iOS opens the invoiceiOSPassed
4Android opens the invoiceAndroidFailed

Failed · Passed on iOS, failed on Android · 4m 12s

On Android the app lands on Home after sign-in, and invoice INV-2041 never opens. Step 9 in the recording.

Not tested: tablets, because the ticket only covers phones.

RecordingStepsReasoning

Smoketest moved this to In Progress and assigned Kevin
Android landed on Home

You get a result for each platform on the ticket.

It signs in, taps the link, and checks where it lands.

It works through the slow parts of a mobile test the way a person on your team would.

Billing owner
Member
WAWorkspace Admin
admin@inbox.smoketest.shSigned in

Logins and roles

Save a sign-in for each test account, and it starts where the ticket does.

9:41Monday
AAcmeYour invoice is ready
Opens INV-2041

Deep links and push

It taps the link or the notification, then checks where the app lands.

INV-2039$294.00
Archive
INV-2040$187.50
INV-2041$312.40

Gestures

It swipes, long presses, and pulls to refresh, the way a person would.

Invoice$312.40
iOS
Home
Android

iOS and Android

One ticket runs on both, and the result says where it passed and failed.

UploadYour CI
AAcme 4.18.app.apk

Builds by upload or CI

Upload a build, or send each one from CI, and it tests the latest.

Small
Large
Tablet

Screen sizes

Pick the phones to test on, and every ticket on that board uses them.

You move the ticket. Smoketest does the rest.

Your columns, assignees, and workflow stay as they are. People only step in where a person is needed.

1 Hand off
2 Read
3 Plan
4 Test
5 Report
Developer
Moves the ticket to Ready for QA
Fixes what failed, with the recording in hand
Smoketest
Reads the ticket and the pull request
Writes the checks and picks a test account
Runs them on iOS and Android
Posts the result and moves the ticket
QA lead
Sets the rules it plans from
Answers when a ticket needs a look
  1. 1 Hand off
    DeveloperMoves the ticket to Ready for QA
  2. 2 Read
    SmoketestReads the ticket and the pull request
  3. 3 Plan
    SmoketestWrites the checks and picks a test account
    QA leadSets the rules it plans from
  4. 4 Test
    SmoketestRuns them on iOS and Android
  5. 5 Report
    DeveloperFixes what failed, with the recording in hand
    SmoketestPosts the result and moves the ticket
    QA leadAnswers when a ticket needs a look

Every ticket comes back Passed, Failed, or No Result.

If a person moves a ticket while it is testing, it stops and never moves it back.

Acme › ACM-512In Progress
Open the invoice from the email link
The invoice link opens the invoice in the app, even after sign-in.
Smoketest3 min ago
Failed 3 of 4 checks passed on PR #1311, 4m 12s
  • Tapped the invoice link in the email
  • Signed in with an email code
  • iOS opens invoice INV-2041
  • Android opens invoice INV-2041Expected the invoice, the app opened Home. Step 9 in the recording.
  • Not tested: tabletsThe ticket only covers phones.

RecordingStepsReasoning

Smoketest moved this issue to In Progress and assigned Kevin

Keep a passed ticket as a regression test.

Your coverage grows with every sprint, and nobody writes it by hand.

  1. Ticket test

    Written from the ticket and its acceptance criteria. Lives for the sprint.

    When a ticket reaches QA
  2. Regression

    Save it to your library and run it on every build from your CI.

    On every build
  3. Release check

    Run the saved set on the build you are about to send to the stores.

    Before you submit

A QA teammate with no queue.

QA team memberSmoketest
Picks up a ticketWhen it reaches the top of their queueAs soon as it reaches QA
DevicesThe phones on their deskiOS simulators and Android emulators
Both platformsOne after the otherBoth, on the same ticket
Logins and email codesSigns in and checks their inboxSaved sign-ins and its own inbox
Proof on the ticketA comment and maybe a screenshotResult, recording, and steps
Judgment callsMakes themLeaves a note and waits for a person

Your QA team stays in charge. Smoketest takes the first pass, and they keep the calls that need a person.

See what the first pass costs you each year.

Someone checks every ticket today. Move the sliders to see what those hours add up to, and what Smoketest gives back.

Back in your budget each year$52,0001,040 hours a year at $50 an hour
Book a call

Valued at $50 per hour, the U.S. median wage for QA analysts and testers (BLS, May 2025), over 26 two-week sprints. First pass only, before your Smoketest plan.

One team member for everything you ship.

When a ticket touches more than your mobile app, the same ticket runs on the other surfaces too.

SurfaceSandboxWhat it checksProof you get
Web appsSandboxCloud browser at any widthWhat it checksFlows, forms, logins, downloadsProof you getVideo, steps, transcript→
Mobile appsSandboxiOS simulator, Android emulatorWhat it checksScreens, gestures, deep linksProof you getVideo, steps, device log→
APIsSandboxAPI runner against stagingWhat it checksStatus, contracts, auth, side effectsProof you getRequest and response log→
MCP serversSandboxMCP client with a real modelWhat it checksSchemas, auth, real tool callsProof you getTool-call transcript→
AI agentsSandboxYour agent's real interfaceWhat it checksReplies, tool calls, side effectsProof you getConversation transcript→

Building something else? One team asked us to test their voice agent, so we are adding it. Propose your surface

Testing a mobile app comes down to five checks.

Whether a person or an agent does it, a good pass covers the same ground. Smoketest works out which of these a ticket needs, then runs them.

  1. 1

    The main flow

    Follow the path the ticket describes, on both iOS and Android.

  2. 2

    Sign-in and roles

    Repeat it as each kind of user, including one who should not have access.

  3. 3

    Ways into the app

    Open it from a link, a push notification, and a cold start.

  4. 4

    Gestures and screen sizes

    Swipe, scroll, and rotate on the phones your users carry.

  5. 5

    Interruptions

    Lose the connection, leave the app, and come back to the same place.

Questions about testing mobile apps

It runs on iOS simulators and Android emulators, and builds arrive by upload or from CI. If your release depends on physical devices, tell us on the call and we will say how far this gets you.

Upload a build, or send each new one from CI. It tests the latest build for that board unless a ticket says otherwise.

No. It writes the test from the ticket, or from a sentence you give it. A renamed button does not fail the test, and nobody has to keep it up to date.

Yes. It taps the notification or the link the way a user would, then checks where the app lands, including after a sign-in.

Yes. Save a sign-in for each test account, or give a test account its own inbox for email codes and magic links.

Keep them. They guard the flows you have already scripted. Smoketest takes the first pass on each new ticket, so nobody has to write a script before it can be tested.

It starts at $399 a month for 1,000 runs. Each run is up to 10 minutes, and a longer test counts as two runs or more, one for every 10 minutes. If your team needs more, we design a Scale plan with you, so you stop buying extra runs.

Every result links to the recording, the steps, and the reasoning, and says what it did not test, so you can check its work the way you would check a teammate's.

Your next mobile ticket comes back tested.

Book a call and we will run one ticket on your latest build with you. You get the result and the recording the same day.

Ready for QA
Done
ACM-512
Open the invoice from the email link
Passed, recording