In this video· click a step to jump to it
C
Passed ✓
Test recording
Couch Pals — walkthrough v2
33,982 ms · 18,566 pixels changed
We built this regression test for couchpals.com — it's yours to keep, free.
Take this test with you
This is a real Playwright test, recorded against couchpals.com. Claim it into your own workspace and re-run it on every deploy — free.
export async function test(page, baseUrl, screenshotPath, stepLogger) {
const shot=(n,s)=>screenshotPath.replace('.png','-'+n+'-'+s+'.png');
await page.context().setExtraHTTPHeaders({ 'User-Agent':'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36' }).catch(function(){});
async function addPlayer(nm){
const open=page.getByRole('button',{name:/^Add$/i}).first(); if(await open.isVisible().catch(function(){return false;})) await open.click().catch(function(){});
await page.waitForTimeout(700);
const inp=page.locator('input[placeholder="New player"]').first(); await inp.click().catch(function(){}); await inp.fill(nm).catch(function(){});
const rf=page.getByRole('button',{name:/random face/i}).first(); if(await rf.isVisible().catch(function(){return false;})) await rf.click().catch(function(){});
await page.waitForTimeout(400);
const adds=page.getByRole('button',{name:/^Add$/i}); const n=await adds.count(); await adds.nth(n-1).click().catch(function(){});
await page.waitForTimeout(900);
}Checks run
18,566
Diff px
34s
Duration
—
Accessible
A
Fast
Web Vitals · 100
Notes from the demo run
AI-generatedCouch Pals is a no-login game-night session tracker. You register your regular players once (name + avatar, stored in-browser), then start sessions and use quick tools (dice/coin/random picker). Everything works anonymously, client-side.
Highlights
- Register players once'Add each real player once — profile, avatar and stats stay in this browser for later sessions' is a clean local-first model, no account.
- Zero frictionOpen app → add players → start a session, all without signup.
Friction points
- Device-local onlyPlayer roster lives in one browser; recurring groups on multiple devices would need an optional sync.
Visual change
Share this run
Earned · Lastest awards
Proof your app is not AI slop
Badges stay live, ratchet upward, only downgrade on confirmed regression.
57,604 test runs recorded · 1,174 products tested with Lastest
This test was built for couchpals.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.


