Recording of the visual regression run on app.inferect.online · Inferect — app walkthrough.

In this video· click a step to jump to it

A
Passed

Test recording

Inferect — app walkthrough

109,856 ms · 22,875 pixels changed

We built this regression test for app.inferect.online — it's yours to keep, free.

Take this test with you

This is a real Playwright test, recorded against app.inferect.online. 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, 1300); await new Promise(r => setTimeout(r, 300)); await anim(max, 0, 700); })()";

  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' });
  await page.route('**/cdn-cgi/scripts/**', function (r) { r.abort(); }).catch(function () {});
  await page.route('**/sentry-cdn.com/**', function (r) { r.abort(); }).catch(function () {});

  // ── Public context: marketing home ──────────────────────────────────────
  stepLogger.log('Scenario 1: Public marketing home');
  await page.goto('https://inferect.online/', { waitUntil: 'domcontentloaded' });
  await page.waitForLoadState('networkidle', { timeout: 6000 }).catch(function () {});
+107 more lines claim the test to get the full code.

Checks run

Run
Visual
2.66%
Text
DOM
Network
Console
A11y
A
Perf
360 over
URL
Variables
Full report
Log in →
22,875
Diff px
1m 50s
Duration
A
Accessible
WCAG 2.2 · 100
Review
Fast
Web Vitals

Notes from the demo run

AI-generated

We signed up for Inferect, completed the four-step onboarding, created a workspace and an Inferect API key, then walked every surface in the console: Playground, Providers, Models, API keys, Usage, Routing, Organization, Billing, Budgets and Guardrails. The information architecture is the strongest thing here. Every page opens with one plain sentence explaining what it is for, and the API keys page draws the distinction between an Inferect key and a provider key before a new user can get it wrong.

Highlights
  • Every page explains itself in one line
    Playground: 'Send a real request through Inferect. This is the same path your application takes.' Budgets: 'Set a monthly ceiling on estimated spend.' That one-sentence header on each route does more onboarding work than a tour would.
  • The Inferect-key vs provider-key distinction is made early
    The API keys page states 'It is not a provider key, your provider keys stay on the Providers page' right under the heading. For a gateway product that is the single most confusable concept and you defused it up front.
  • Copy-paste integration is one screen
    Base URL, plus cURL / Python / JavaScript tabs with a filled-in example, all sit under the key you just created. Nothing to hunt for in docs.
Friction points
  • The Playground is reachable but unusable before a provider is connected
    Landing on Playground shows 'No models are available yet' and a greyed-out Send request, so the page that best demonstrates your value is a dead end for a brand-new account. Consider seeding a trial-credit model so the first request works before any provider key is added.
  • The onboarding country field silently accepted a workspace name
    On the Organization step we filled the visible text inputs generically and 'Country (optional)' took a free-text value with no validation or autocomplete, so it saved a non-country string. A select, or a simple validation, would stop that landing in your org records.
Couldn't reach
  • /dashboard/webhooks·Walked during discovery but trimmed from the recording to keep it under two minutes

2 visual changes

Step 122,766 px changed
Before
Before
After
After
Diff
Diff
Step 6109 px changed
Before
Before
After
After
Diff
Diff

Share this run

Earned · Lastest awards

Proof your app is not AI slop

LASTEST
starter
tests
all passing
a11y
WCAG AA
regressions
0
Badges stay live, ratchet upward, only downgrade on confirmed regression.
56,888 test runs recorded · 1,049 products tested with Lastest

This test was built for app.inferect.online — 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.