In this video· click a step to jump to it
Test recording
Hiroo — app walkthrough
40,850 ms · 185,588 pixels changed
We built this regression test for hiroo.me — it's yours to keep, free.
Take this test with you
This is a real Playwright test, recorded against hiroo.me. Claim it into your own workspace and re-run it on every deploy — free.
export async function test(page, baseUrl, screenshotPath, stepLogger) {
let n = 0;
const shot = async (slug) => {
n += 1;
await page.screenshot({ path: `${screenshotPath}-${n}-${slug}.png`, fullPage: true });
stepLogger.log(`Captured step ${n}: ${slug}`);
};
const safeGoto = async (url, slug) => {
const resp = await page.goto(url, { waitUntil: 'domcontentloaded' }).catch((e) => {
stepLogger.warn(`Navigation to ${url} threw: ${e.message}`);
return null;Checks run
Notes from the demo run
AI-generatedHiroo's marketing site is a clean single-page pitch ("Stop applying. Start landing.") with an embedded product-preview panel that previews the real in-app nav (Overview/Outreach Batch/Emails/Replies/Settings). The real authed app (app.hiroo.me) is a separate subdomain from the marketing site (hiroo.me) and gates every dashboard entry through a short resume-upload onboarding step until a resume is provided. The in-app surface itself is clean: Jobs, Outreach, Replies, Profile (a genuinely deep 'Tune your agent' settings form with Identity/Goal/Preferences/Experience/Skills/Resume sections), and Settings.
- Deep profile editorThe Profile page ('Tune your agent') is far more substantial than the marketing screenshot suggests: tabs for Identity, Career goal, Preferences, Application basics, Experience, Projects, Skills, Links, Documents and Resume all live on one scrollable form.
- Real primary interaction reachable without a resumeEven without uploading a resume, the onboarding 'Confirm your profile' step lets a visitor set target roles and immediately see the Jobs-matching surface respond -- the core value prop is testable pre-resume.
- Privacy policy is unusually transparentThe /privacy page includes a 'Plain-English Gmail summary' explicitly stating Hiroo only requests gmail.send and userinfo.email scopes and never reads the inbox -- a strong trust signal for a Gmail-integrated product.
- Home nav item shows an unexpected invite wallClicking 'Home' in the authenticated sidebar (/dashboard) rendered 'Sign in to continue -- Invite required before access' with a 'Return to sign-in' button, even though the session was fully authenticated and had just completed onboarding. The sidebar itself stayed rendered (proving the session was valid), so this looks like a route-specific access-check bug rather than a real logout.
- Settings page has a slow client-side data fetchSettings consistently rendered a 'Loading settings...' spinner that didn't resolve within several seconds on the EB runner network, even after the rest of the app (Jobs/Outreach/Replies/Profile) loaded instantly. Worth checking if the settings API call has unusually high latency or lacks a timeout/retry.
- Marketing hero nav links are non-functional anchorsThe top nav ('How it works', 'Features', 'Testimonials', 'FAQ') all point to href="#" placeholders rather than real in-page anchors (#how, #features, etc.), so clicking them does not scroll to the relevant section.
6 visual changes
Share this run
Proof your app is not AI slop
This test was built for hiroo.me — 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.

















