In this video· click a step to jump to it
Test recording
99helpers — app walkthrough
91,726 ms · 68,026 pixels changed
We built this regression test for 99helpers.com — it's yours to keep, free.
Take this test with you
This is a real Playwright test, recorded against 99helpers.com. Claim it into your own workspace and re-run it on every deploy — free.
export async function test(page, baseUrl, screenshotPath, stepLogger) {
const UA = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36';
await page.context().setExtraHTTPHeaders({ 'User-Agent': UA }).catch(() => {});
for (const pat of [
'**/cdn-cgi/scripts/**/email-decode.min.js',
'**/browser.sentry-cdn.com/**',
'**/cdn.segment.com/**',
'**/connect.facebook.net/**',
'**/www.googletagmanager.com/**',
'**/static.hotjar.com/**',
'**/*.clarity.ms/**',
]) { await page.route(pat, r => r.abort()).catch(() => {}); }Checks run
Notes from the demo run
AI-generatedWe signed in with Google and drove the whole org: the hosting dropzone, the AI help bot and a real question to it, chat settings, the embeddable widget, knowledge base, forms, form results, feedback centre, help centre, the AI wiki and the WhatsApp channel, then account settings. Fourteen working surfaces on a free org is a lot of product, and the wiki's run modes are the clearest AI controls we have seen on a small SaaS. Two things get in the way, and both are one-screen fixes.
- Fourteen working surfaces on a free orgHosting, Chat, Chat Settings, Widget, Knowledge Base, Forms, Form Results, Feedback Center, Help Center, Wiki, and WhatsApp / Telegram / Messenger channels all render and are usable without paying.
- The wiki names exactly what the AI will doAuto, Create only, Update only and Rewrite all, next to an explicit model picker. Most AI features offer one 'Generate' button and leave you guessing whether it will overwrite your work. This does not.
- Hosting states its limits before you drop a file25 MB single file, 100 MB whole site, and the accepted formats listed by category. No surprise rejection after a long upload.
- The Terms control defaults to 'No, I don't agree' and silently disables sign-inThere are two of these selects on /auth/login, both defaulting to No, and until you flip them the 'Continue with Google' and 'Sign in' buttons are disabled with no message explaining why. Clicking a dead button is the first thing a new visitor does. Default it to unselected with inline validation, or use a checkbox that says what is blocked.
- Your own AI help bot cannot answer questions about 99helpersWe asked 'What file types can I host here, and what is the size limit?' and got 'I can only assist with questions related to the organization's knowledge base... I cannot answer your question about file types and size limits for hosting.' That answer is printed on your Hosting page one click away. Seeding every new org's knowledge base with your own docs would make the bot useful on day one instead of empty.
2 visual changes
Share this run
Proof your app is not AI slop
This test was built for 99helpers.com — claim it free
One click copies the test and baseline screenshots into your own Lastest workspace. Re-run on every deploy and catch regressions before your users do — free, no card required.





