In this video· click a step to jump to it
Test recording
Compazz — app walkthrough
108,602 ms · 32 pixels changed
We built this regression test for Compazz — app walkthrough — it's yours to keep, free.
Take this test with you
This is a real Playwright test, recorded against Compazz — app walkthrough. Claim it into your own workspace and re-run it on every deploy — free.
export async function test(page, baseUrl, screenshotPath, stepLogger) {
const shot = (i, slug) => screenshotPath.replace('.png', '-' + i + '-' + slug + '.png');
const SCROLL_THROUGH = "(async () => { const ease = t => 1 - Math.pow(1 - t, 3); const max = Math.max(0, document.body.scrollHeight - window.innerHeight); if (max < 40) return; const anim = (a, b, ms) => new Promise(res => { const t0 = performance.now(); const step = now => { const p = Math.min(1, (now - t0) / ms); window.scrollTo(0, a + (b - a) * ease(p)); p < 1 ? requestAnimationFrame(step) : res(); }; requestAnimationFrame(step); }); await anim(0, max, 1400); await new Promise(r => setTimeout(r, 350)); await anim(max, 0, 800); })()";
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 });
for (const pattern of ['**/sentry-cdn.com/**', '**/browser.sentry-cdn.com/**', '**/cdn.segment.com/**', '**/connect.facebook.net/**', '**/*.posthog.com/**', '**/googletagmanager.com/**', '**/google-analytics.com/**', '**/*.clarity.ms/**', '**/doubleclick.net/**']) {
await page.route(pattern, function (r) { r.abort(); }).catch(function () {});
}
const dismiss = async function () {
for (const rx of [/^accept$/i, /accept all/i, /got it/i, /allow all/i, /^ok$/i, /skip for now/i, /maybe later/i, /^later$/i, /not now/i, /^close$/i, /^dismiss$/i]) {
await page.getByRole('button', { name: rx }).first().click({ timeout: 1200 }).catch(function () {});
}Checks run
Notes from the demo run
AI-generatedWe created a Compazz account and recorded the signed-in setup wizard - naming the business and moving across all four starting points (Physical shop, Online shop, Services & appointments, and the combined option). The segmentation copy is the strongest part: each card names the businesses it covers ('A shop, pharmacy, supermarket, restaurant or branch') and then the outcome ('Control sales, stock and staff'), which is a far better question than the usual 'select your industry' dropdown. We stopped short of submitting the step for the reason below.
- Starting points written in the merchant's wordsFour cards, each naming real business types and pairing them with an outcome line. A pharmacy owner recognises themselves in one read - much better than an industry picker.
- Reassurance where the doubt is'Your choices only change the tools you see first. You can expand your business later' sits directly under the cards, defusing the exact fear that makes people abandon a segmentation step.
- Trial terms stated up front30-day trial, no credit card, stated on the signup form and again at the top of the wizard.
- Continue on step 1 signs the account outWith the business name filled and a starting point selected, clicking Continue returned us to /auth?mode=login rather than step 2 - reproduced twice from a freshly authenticated session. Because /dashboard also redirects to /auth until the wizard is finished, a new account can end up locked out at the first click of the product.
- No way past the wizardEvery in-app route we tried redirected back to /onboarding, so there is no 'look around first' path for someone evaluating before committing details.
2 visual changes
Share this run
Proof your app is not AI slop
This test was built for Compazz — app walkthrough — 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.





