No-code user test monitoring

User test monitoring in a sentence. No code, no selectors.

Describe a test in a sentence. Smoketest runs it in a real browser after every deploy and tells you the moment it breaks.

Your first run in about two minutes. 14-day free trial, no card required.

smoketest.sh/dashboard
Board
Tickets currently moving through QA
Development1
Jira · APP-917
Invite member from workspace settings
App QANot tested
Testing2
Linear · WEB-284
Apply annual discount at checkout
Checkout QARunning
Linear · AUTH-126
Recover account with magic link
Authentication QANeeds attention
Passed1
Jira · BILL-442
Show updated invoice after seat change
Billing QAPassed
The problem

Coded tests rot. Bugs reach production anyway.

Selectors break

Coded tests snap on every rename, moved button, or new wrapper div.

Nobody maintains them

Small teams write a few E2E tests, watch them go flaky, and quietly stop.

Broken in production

Checkout or login breaks after a deploy and a customer finds it first.

Flying blind

Without coverage you ship on hope and hear about bugs from support.

What a test looks like

You write sentences. That's the test.

you write
Start on the pricing page.
Choose the Pro plan.
Create a new account with the test email.
Complete checkout using the test card.
Confirm the app shows the billing success screen.
smoketest does the rest
Opens a real browser and runs each step like a user
Pulls the test email and card from your environment secrets
Records the full session
Returns a pass or fail result with its reasoning
Saves the transcript, screenshots, and every artifact
Use cases

Cover the tests that matter.

Login

User logs in with email and password and lands on the dashboard.

Checkout

User adds an item to the cart, checks out with the test card, and sees the order confirmation.

Onboarding

New user signs up, completes the setup wizard, and reaches an empty project.

Billing

User upgrades to Pro and the workspace shows Pro features enabled.
The 200 OK lie

Your uptime monitor says green. Is checkout actually working?

After a deploy
Uptime monitor
Smoketest
Home page returns 200
Catches it
Catches it, then keeps going
Checkout actually charges the card
Misses it
Runs the full purchase in a real browser
Login redirect loops after an auth change
Misses it
Fails the run and shows where it looped
A form submits but saves nothing
Misses it
Verifies the result, not just the request
What you get on a failure
A pinged status
Recording, transcript, result, failing step
When a test fails

The whole story, not just a red X.

Every failed run hands you a recording, a transcript, and the exact step that broke.

checkout-test.webm
00:00↑ 00:09 · checkout00:11
step log
Opened /pricing
Selected the Pro plan
Created account with the test email
Submitted checkout with the test card
Expected billing success · got 500 error
Session recording
Screenshot at failure
Step-by-step transcript
Downloadable Playwright trace
How it works

Jira or Linear starts the Test.

Keep the workflow where QA already works. Smoketest adds execution, evidence, and routing without becoming another board.

workspace · connections
Lhealthy
Linear
Acme workspace
Jhealthy
Jira
acme.atlassian.net
01

Connect Jira or Linear

A workspace owner authorizes Jira or Linear once. Smoketest keeps Connection identity, permissions, token health, and webhook health visible.

new test source
Listen to
Checkout board · QA
Passed
Ready to release
Failed
Development
Run at
staging.acme.com · Desktop
Permissions and direct transitions validated
02

Define the QA handoff

Choose the team or board, exact QA status, direct Passed and Development statuses, then set the URL, Environment, device, and access settings.

test request · attempt 1
WEB-284 enters QA
Ticket + linked PR frozen
Generated Test created
Browser Run in progress
03

Let the ticket start testing

When a ticket enters QA, Smoketest freezes current context, enriches it from an eligible ticket-linked pull request, generates one Test, and runs it automatically.

result · synchronized
PASSEDWEB-2841m 42s
Attempt comment updated with evidence
Authenticated recording and transcript linked
QAReady to release
04

Return the Result safely

Smoketest posts evidence to one evolving Attempt comment. Passed moves forward, Failed returns to Development, and No Result stays in QA. Newer human changes always win.

Pricing

One plan. No per-test pricing.

Cover a handful of critical tests, then add more as you trust it. No seats to count, no suite to maintain.

14-day free trial · 50 credits · no card
One plan: $39/mo, or $32/mo billed annually
300 credits/month · 1 credit = one run up to 10 min
FAQ

Answered.

No-code end-to-end testing checks a complete user journey, like sign-up, login, or checkout, without writing test scripts. You describe the test in a sentence and an agent runs it in a real browser, then returns a recording, a step-by-step transcript, and a pass or fail result. Run it after every deploy and it becomes user test monitoring with no test code to maintain.

Yes. With Smoketest you write a few sentences describing what a user does and what should happen. There are no selectors, locators, or test files. The agent reads the page the way a person would and decides what to click, type, and verify.

Playwright and Cypress are code frameworks: you write and maintain selectors, fixtures, and assertions. Smoketest replaces the code with a written description and an agent that reasons about the live page, so tests don't break every time a button is renamed or moved.

Far less often. Because there are no fixed selectors, a renamed button or a moved element doesn't break the test. A run only fails when the behavior actually breaks, when a user genuinely couldn't finish the journey.

Yes. Add a test username and password as environment variables in your project. The agent logs in at the start of the run, and every step after that runs authenticated. Credentials stay out of your test text and out of the logs.

Yes. Store a test card and any other secrets as environment variables and describe the purchase in a sentence. Smoketest runs the full checkout in a real browser and tells you the exact step it failed on if the money path breaks.

Yes. Trigger tests from GitHub Actions, GitHub pull-request and push checks, deployment webhooks, Claude Code or Cursor over MCP, the public API, or the CLI, the same places your pipeline already runs. You can also schedule them or point a run at a preview URL.

Every run is real: a real browser against your real URL, with a recording, a transcript, and the reasoning behind the result. You're never trusting a black box, you can watch exactly what happened and why a run passed or failed.

Small software teams without a dedicated QA function, founders, engineering leads, and product engineers who need their critical tests covered but can't own and maintain a coded test suite.

Start a free 14-day trial, paste your app's URL, and write your first test as a sentence. Run it once, watch the recording, then schedule it or wire it into your deploys. No card required to start.

Test in a sentence. Skip the test code.

Write your first test, run it in a real browser, and know in minutes whether your core journeys still work.

Read the docs