Recording of the visual regression run on quimonit.com · Quimonit — website monitoring walkthrough.

In this video· click a step to jump to it

Q
Passed ✓

Test recording

Quimonit — website monitoring walkthrough

82,130 ms · 182,911 pixels changed

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

Take this test with you

This is a real Playwright test, recorded against quimonit.com. Claim it into your own workspace and re-run it on every deploy — free.

export async function test(page, baseUrl, screenshotPath, stepLogger) {
  const STAMP = Date.now().toString(36);
  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, 1400); await new Promise(r => setTimeout(r, 350)); await anim(max, 0, 800); })()";

  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/**/email-decode.min.js', function (r) { r.abort(); }).catch(function () {});

  // ─── 1. Public home ───────────────────────────────────────────────────────
  stepLogger.log('Home - what Quimonit sells');
  await page.goto(baseUrl, { waitUntil: 'domcontentloaded' });
  await page.waitForLoadState('networkidle', { timeout: 4000 }).catch(function () {});
+100 more lines — claim the test to get the full code.

Checks run

Run
✓
Visual
95.38%
Text
—
DOM
✓
Network
+56 −56
Console
✓
A11y
A
Perf
1022 over
URL
42 diverged
Variables
—
Full report
Log in →
182,911
Diff px
1m 22s
Duration
A
Accessible
WCAG 2.2 · 91
C
Fast
Web Vitals · 70

Notes from the demo run

AI-generated

We signed in, added an SSL-certificate monitor on app.lastest.cloud and had a real check back in under ten seconds — 636ms, green, counting up. That speed from add-monitor to first data point is the whole pitch and you nail it. Seven check types behind one button, each with its own sane default interval, and no plan upsell in the way of the free tier's four monitors.

Highlights
  • First check lands before you can tab away
    Create Monitor to a live latency reading was under ten seconds, with the sparkline already filling in. Most monitoring tools make you wait for the first interval and show an empty card in the meantime.
  • Seven check types, one dialog
    Server Ping 5s, Content 5m, DNS 15m, Malware 24h, Blacklist 24h, SSL 24h, Vulnerability 24h — the interval is printed on each card, so the cost/frequency tradeoff is visible at the moment you choose. That is a good bit of interface design.
  • Locked features are labelled, not hidden
    Contacts is badged ENT and Pause is badged PRO right on the monitor card. Showing what exists and what it costs beats discovering a missing feature later.
  • Tier View lets you see the paid UI before paying
    The basic/Premium/Pro/Enterprise switch in Settings repaints the dashboard as that tier. That is an honest way to sell an upgrade.
Friction points
  • War Room does not lay out at 1280x720
    Entering War Room, the monitor tiles render as two thumbnail-sized cards clipped in the top-left while the Response Time and Health Status charts take the full width above them, and the clock washes out against the background. Since War Room is the view people put on a wall display, it is worth pinning the grid to the viewport rather than letting the chart block push it down.
  • The group header disagrees with the monitor it contains
    The app.lastest.cloud row showed "0/1 up" in its header while the SSL monitor inside it was green and reporting 636ms. Looks like the rollup counts a check type the header does not expect — confusing on a status board, where the header is the thing people scan.
Couldn't reach
  • Export Report·Triggers a file download; we do not fire downloads on someone else's account.
  • Send Test Email / Send Test SMS·Sends real outbound messages — out of bounds for an unattended walk.

11 visual changes

Step 16,556 px changed
Before
Before
After
After
Diff
Diff
Step 23,943 px changed
Before
Before
After
After
Diff
Diff
Step 3181 px changed
Before
Before
After
After
Diff
Diff
Step 4295 px changed
Before
Before
After
After
Diff
Diff
Step 55,148 px changed
Before
Before
After
After
Diff
Diff
Step 65,148 px changed
Before
Before
After
After
Diff
Diff
Step 75,164 px changed
Before
Before
After
After
Diff
Diff
Step 85,519 px changed
Before
Before
After
After
Diff
Diff
Step 95,148 px changed
Before
Before
After
After
Diff
Diff
Step 1245,518 px changed
Before
Before
After
After
Diff
Diff
Step 13100,291 px changed
Before
Before
After
After
Diff
Diff

Share this run

Earned · Lastest awards

Proof your app is not AI slop

LASTEST
starter
regressions
0
Badges stay live, ratchet upward, only downgrade on confirmed regression.
57,226 test runs recorded · 1,151 products tested with Lastest

This test was built for quimonit.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.