In this video· click a step to jump to it
Test recording
InOrOff — app walkthrough
86,153 ms · 1,387,793 pixels changed
We built this regression test for inoroff.com — it's yours to keep, free.
Take this test with you
This is a real Playwright test, recorded against inoroff.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, slug) => screenshotPath.replace('.png', `-${n}-${slug}.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' });
for (const pattern of ['**/googletagmanager.com/**', '**/google-analytics.com/**', '**/connect.facebook.net/**', '**/*.sentry-cdn.com/**', '**/*.ingest.*.sentry.io/**']) {
await page.route(pattern, function(r){ return r.abort(); }).catch(function(){});
}
// ── AUTHED 1: in-app guide ────────────────────────────────────────────────
stepLogger.log('Authed 1: In-app guide');
await page.goto(baseUrl + '/help', { waitUntil: 'domcontentloaded' });
await page.getByText(/Setting up an organisation|Monthly close/i).first().waitFor({ state: 'visible', timeout: 12000 }).catch(function(){});Checks run
Notes from the demo run
AI-generatedWe created an InOrOff account, verified by email, set up 'Lastest Demo Ltd' as a new organisation from your four-decision onboarding, then drove twelve authenticated surfaces: Today, My attendance, Leave, Remote work, Calendar, Approvals, Team, Reports, Monthly close, Settings and Your account. We also checked in for real, and the recording shows that check-in landing in the September ledger at 14:04 with status 'Checked in'. Your copy is the most distinctive thing here: every screen explains the rule it is applying rather than just showing a number.
- The ledger explains itselfMy attendance footers state the rule in plain words: worked minutes come from check-in/check-out with unpaid breaks removed, a day closed at the cut-off stays Unknown until a correction is approved, and late figures are informational and never deductions. That last line pre-empts the objection every employee has.
- Onboarding is genuinely four decisionsOrganisation name, country, timezone and first location, with the founder-is-also-an-employee path inline. We had a working workspace with a schedule, a rest-day pattern and 24.65 days of leave balance in about a minute.
- Privacy stated at the point of sendingThe verification email itself ends with 'This message contains no leave reasons or medical details by design.' Saying it where it is being honoured is far stronger than a privacy page.
- Signed-in visitors cannot reach the marketing siteWith a session, https://inoroff.com/ redirects straight to /today, so a logged-in admin cannot get back to pricing or the public pages to check a plan or send a colleague a link. A /home route that stays public would fix it.
- Check-in is a one-way door in the UIOnce checked in, the Today card offers only Check out. There is no visible 'I checked in by mistake' affordance next to it, only the Report correction flow one page deeper on /attendance.
4 visual changes
Share this run
Proof your app is not AI slop
This test was built for inoroff.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.











