Recording of the visual regression run on razo.tv · Razo.tv — app walkthrough.

In this video· click a step to jump to it

R
Passed

Test recording

Razo.tv — app walkthrough

55,066 ms · 0 pixels changed · matches baseline

We built this regression test for razo.tv — it's yours to keep, free.

Take this test with you

This is a real Playwright test, recorded against razo.tv. 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');
  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, 1200); await new Promise(r => setTimeout(r, 300)); await anim(max, 0, 700); })()";
  const ctx = page.context();

  page.setDefaultTimeout(12000);
  await ctx.setExtraHTTPHeaders({ 'User-Agent': "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36" });
  for (const pattern of ['**/cdn-cgi/scripts/**', '**/*sentry-cdn.com/**', '**/cdn.segment.com/**', '**/connect.facebook.net/**', '**/*.doubleclick.net/**', '**/googletagmanager.com/**']) {
    await page.route(pattern, function (r) { r.abort().catch(function () {}); }).catch(function () {});
  }
+155 more lines claim the test to get the full code.

Checks run

Run
Visual
Text
DOM
Network
+33 −33
Console
A11y
A
Perf
121 over
URL
231 diverged
Variables
Full report
Log in →
0
Diff px
55s
Duration
A
Accessible
WCAG 2.2 · 93
C
Fast
Web Vitals · 70

Notes from the demo run

AI-generated

We drove razo.tv end to end on a brand-new creator account: signed up, confirmed the email, then walked the creator studio and set a stream up for real. Your dashboard is unusually complete for a launch-week product — Stream, Chat, Clips, Events, Analytics, Payouts, Wallet and Settings all exist and render before a creator has ever gone live, and saving stream details plus generating an OBS key both worked first time.

Highlights
  • The creator studio is ready on day one
    Nine sub-sections render on a zero-history account. Setting a title, picking Creative, saving, and generating a stream key all worked in one pass — that is the whole go-live path, and it already works.
  • Email gating is honest
    /wallet and /plus refuse to sell anything until the address is confirmed, with a clear 'Confirm your email' panel rather than a silent failure at checkout.
  • The board looks alive before you invite anyone
    Categories carry live viewer counts on first load, so a new visitor never lands on an empty product.
Friction points
  • The header search box is permanently disabled
    The Search input renders full width at the top of every signed-in page but carries disabled + aria-disabled, so clicking it does nothing. Either wire it up or hide it until it works — a dead control in the most prominent slot reads as broken.
  • /settings 404s while /settings/profile renders
    The bare /settings path returns your 404 page. A one-line redirect from /settings to /settings/profile removes a dead end people will reach by guessing.

Share this run

Earned · Lastest awards

Proof your app is not AI slop

LASTEST
starter
tests
all passing
regressions
0
Badges stay live, ratchet upward, only downgrade on confirmed regression.
56,423 test runs recorded · 962 products tested with Lastest

This test was built for razo.tv — 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.