Describe your app.dejav tests it.

Write down what your app should do in plain language. dejav turns it into test cases and runs each one in a sandboxed browser, with a screenshot of every step and a replay of the session.

Free for one site.

See how it works
app.dejav.io
A dejav run result: pass and fail counts, the test cases, and the issues found.

How dejav works

  1. Describe

    Paste a description of what your app should do. Bullet points, prose, and rows copied from a spreadsheet all work.

    DescriptionPasted

    Users can sign up with email and password

    Coupon SAVE10 takes 10% off the cart

    Stock decrements after a purchase

    Rows copied from a spreadsheet work too.

  2. Generate

    dejav reads the description against your site's pages and writes test cases, including edge cases and invalid input you did not list.

    9 test cases from 3 linesGenerated

    From “Coupon SAVE10 takes 10% off the cart”

    • Coupon SAVE10 takes 10% off
    • Apply the same coupon twiceEdge
    • Apply a coupon to an empty cartEdge
    • Enter a malformed coupon codeError

    + 5 cases from the other 2 lines

  3. Run

    Choose Run. dejav handles any preparation automatically and records the results and screenshots in the same run.

    TC 4/9 · Coupon takes 10% offResults
    1. 1Open /cartpass
    2. 2Fill the coupon field with SAVE10pass
    3. 3The total is reduced by 10%pass

    Run passed

  4. Replay

    Replay the saved steps without extra credits. If a UI change breaks a test, dejav attempts to repair the operation automatically.

    Run #98 · Replay0 credits
    • Coupon SAVE10 takes 10% offpass
    • Apply the same coupon twicepass
    • Apply a coupon to an empty cartrepair attempted

    9 cases · 8 passed · 0 credits · 1 repair attempted

Results for every step

Each test case records a result for every step, a screenshot with the element it acted on outlined, and a replay of the session. Steps that check an expected result pass or fail. When a case fails, you can see which step failed and what the page looked like.

Step results
pass or fail per check
Screenshots
the element outlined
Session replay
the whole session
run #142 · acme-store staging6 test cases · 5 passed · 1 failed
  • PASSSign up with a fresh email
  • PASSCheckout rejects an expired card
  • PASS[Edge] Double submit on the signup form
  • PASS[Error] SQL injection in search input
  • FAILCart total updates when quantity changes
  • PASSPassword reset email flow
TC 5/6 · cart total updates when quantity changesissue · functionality / error
  1. 1open /products/mugpass
  2. 2add to cartpass
  3. 3open /cartpass
  4. 4set quantity to 2pass
  5. 5expect total $168.00fail
  6. 6apply coupon SAVE10skipped
  7. 7checkout stays enabledskipped
replay · full session00:31 / 00:38 · failed at step 5

File issues to GitHub

One click files an issue in your GitHub repository. dejav writes it from what the run recorded.

Title
[category/severity] + the issue's title
Labels
dejav, severity, category
Screenshot
attached directly to the GitHub issue
Duplicates
merged into one issue by root cause
The issue as it appears on GitHub after dejav files it.
github.com/acme/shop/issues/128

[visual/error] Menu opens under the hero on mobile #128

Openacme-qa opened this issue from dejav

acme-qa commented

Bug Report (dejav)

Category: visualSeverity: errorPage: /pricingRun: 7c1e04b2-9d3f-4a61-b8e0-52c4f1a7d690 / Runner 1First seen: 2026-09-24T09:12:40.318ZOccurrences: 3

Description

The menu opens under the hero at 390x844, so its links cannot be tapped.

Screenshot

Found by dejav, autonomous web testing

Labels

  • dejav
  • severity:error
  • category:visual

Run saved tests again with one action

Run the same tests again. Runs that need no preparation or repair use no extra credits.

One test case, 8 runsRun and run again
  1. Run 1First runCreditsprepared automatically
  2. Run 2Replay0 credits
  3. Run 3Replay0 credits
  4. Run 4Replay0 credits
  5. Run 5Run + repairCreditsUI changed; repaired automatically
  6. Run 6Replay0 credits
  7. Run 7Replay0 credits
  8. Run 8Replay0 credits

First run

Choose Run. dejav prepares the test when needed and records the browser execution in the same run.

Replay

Runs that need no preparation or repair use no extra credits. Results and screenshots are recorded each time.

Run + repair

If a page change prevents an operation, dejav attempts a repair automatically. Expected results stay the same; successful repairs use credits.

Edge cases and invalid input

For each feature you describe, dejav also writes test cases you did not list, such as double submits, empty states, and malformed input.

EdgeUnexpected use
  • Boundary values
  • Double submits
  • Going back mid-flow
  • Empty states
  • Repeated clicks
ErrorInvalid and hostile input
  • Invalid input
  • XSS and SQL injection
  • Access without signing in
  • Malformed URLs
  • Access beyond the user's role

Other features

Bring your specs, test behind a login, and keep the results in your workflow.

Go beyond the login page.

Test the parts of your site your customers actually use. Save sign-in details in a test profile, then choose it when you start a scan.

Your specs, part of the test.

Connect a folder in your GitHub repository. dejav reads its Markdown files before each scan.

MCP / CLI integration

Coming soon

Create tests, run them, and retrieve results from Codex, Claude Code, or your terminal. Planned support for your existing tools.

GitHub PR integration

Coming soon

Automatic tests for each pull request’s preview environment, with results and evidence in GitHub. Coming to your review workflow.

Results in your language

Choose English or Japanese per project for test steps, failure reasons, and issue descriptions.

Bring existing tests

Import your test cases from a CSV or TSV file.

Take the results with you

Export test cases, run results, and issues as CSV files.

Keep issues in order

Close issues with a reason. If a resolved bug returns, it opens as a new issue.

Isolated runs
Each run uses an isolated browser. Network rules limit connections to the site under test, the services dejav uses, and its internal network.
Domain verification
Add a DNS record to verify your domain. Until then, each scan or run covers up to 30 test cases.
Excluded paths
The browser blocks requests to paths you exclude, such as admin pages or a live checkout.
Prompt injection
During site exploration and test-case generation, dejav checks for prompt injection. Detection stops the scan and blocks the domain from new scans and runs.
Your data
Site credentials are stored encrypted. Screenshot and replay capture can be turned off per project, and captures can be deleted in bulk.

Start small. Keep testing.

Your first site is free. Runs that need no preparation or repair are included in your plan.

Compare all plan details

Free

$0no time limit

  • One site
  • 300 credits to start, then 50 every month
  • 10,000 replays a month
Start free

No credit card needed.

Starter

Coming soon

$12/ month

  • Unlimited projects
  • 1,000 credits every month
  • Replays with no count limit
Explore Starter

Every account starts on Free.

Try it on your test site

Start free
dejav · automated web app testing