Coverage you can see, per requirement
Each class once, every boundary, at most one invalid class per row, and pairs of valid classes where the risk is high.
VibeQA turns a ticket into a test design your team can review: valid, invalid and boundary cases for every input. Then it automates the design and re-checks every fix in a fresh sandbox.
Free for one project · Web apps today, Android and iOS next
To-kay. Every class has a row.
| Row | Phone number | Delivery address | Last run | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 10-digit mobile | +84 format | 9 digits | 11 digits | contains letters | empty | Ho Chi Minh City | other province | 255 characters | 256 characters | empty | ||
| TC-01 · Valid delivery details continue to payment | ||||||||||||
| TC-01.1 | ✓ Passed | |||||||||||
| TC-01.2 | ✓ Passed | |||||||||||
| TC-01.3 | ✓ Passed | |||||||||||
| TC-02 · An invalid phone number is rejected | ||||||||||||
| TC-02.1 | ✓ Passed | |||||||||||
| TC-02.2 | ✓ Passed | |||||||||||
| TC-02.3 | ✓ Passed | |||||||||||
| TC-02.4 | ✓ Passed | |||||||||||
| TC-03 · A missing or too long address is rejected | ||||||||||||
| TC-03.1 | ✓ Passed | |||||||||||
| TC-03.2 | New row | |||||||||||
| Covered | 4 | 1 | 1 | 1 | 1 | 1 | 5 | 1 | 1 | 1 | 1 | |
An Phạm · 12 min ago
@Tokay the address limit is 255 characters. Cover the boundary on both sides.
Tokay · 11 min ago
TC-01.3 already covers 255. I added TC-03.2 with 256 characters.
Reads your specs and posts results where your team already works
JiraSlackTelegramNotionConfluenceGitHub
Tokay does the writing. People make every decision that matters, and nothing goes live without one.
A Jira ticket, a Confluence or Notion page, or a sentence about the flow.
SHOP-388 · Delivery stepEvery input split into classes and boundaries, written as Gherkin with example rows.
10-digit mobile9 digitsemptyComment on any case. Tokay answers with a change you accept or reject.
@Tokay split TC-02.3 into two rowsOne test per row, dry-run in a sandbox. A person approves the version.
Approve version 13Coverage is computed, not claimed. Runs are isolated. Our own trouble never shows up as your failure.
Each class once, every boundary, at most one invalid class per row, and pairs of valid classes where the risk is high.
@Tokay TC-02.3 has two faults at once. Split it.
When a ticket moves to Ready for QA, VibeQA runs its repro suite three times and posts one verdict back. One lucky pass is not a fix.
Docker Compose on one server, your own Anthropic key, apps that never leave your network.
$ docker compose up -d| Test case spreadsheet | Hand-written Playwright | VibeQA | |
|---|---|---|---|
| Positive, negative and boundary cases per input | By hand | By hand | Yes |
| Coverage gaps found for you | No | No | Yes |
| Reviewers suggest changes in comments | By hand | No | Yes |
| Runs on its own, each in a fresh sandbox | No | By hand | Yes |
| Jira fixes re-checked three times | No | No | Yes |
| Infrastructure errors kept apart from failures | No | No | Yes |
AI usage is included in every Cloud plan.
For trying it on one app
$0/month
Start freeFor a team shipping every week
$49/month
Start a Team trialFor several teams and products
Custom
Contact salesNo. Tokay drafts the design, suggests changes and writes the code. A person approves every version, and approval needs complete coverage, no open comments and a finished dry run.
Each run gets a fresh sandbox with its own browser and network. It holds no platform secrets, only a token that expires with the run.
Web apps today. Android and iOS are next.
On Cloud, AI usage is included in your plan. When you self-host, Tokay uses your own Anthropic key.
Connect Jira once. When a ticket with a repro suite moves to Ready for QA, VibeQA runs the suite three times and comments with one verdict: fixed, still reproducing, flaky or blocked.
When some runs pass and others fail, the verdict is flaky and a person decides. VibeQA never reports a lucky pass as a fix.
Tokay geckos are named for their call: to-kay. Ours makes it when your release is green.