Tools I stole from work - Playwright

I started running browser-driven smoke checks against a volunteer-run camera-club website. The tool was free. The discipline came from somewhere else.

· 5 min read · tools-i-stole-from-work ·web ·testing

A tradesman walks home from work carrying a labelled toolbox marked "PLAYWRIGHT"

This is the first in an ongoing series about tools I started using at work and quietly brought home with me. The conceit isn’t quite “stolen” - none of them are paid licences I’m misusing - but the muscle for using them, the bit that actually matters, did come from somewhere else. Work helped me to learn the shape. Home gets the shape for free.

We’re starting with Playwright because it’s the one I’ve used most this month.

The thing I needed it for

I help run the website for our local camera club. It’s a tiny site by my day-job standards: a few thousand visits a month, a calendar of competitions, a couple of forms, a gallery, and competition scoring. The committee that runs the club are volunteers; the site itself runs on Wagtail; my contribution is to keep it up to date, easy to use, and from quietly degrading between events and seasons.

The problem with this is that things drift. A theme update changes a CSS selector. A plugin upgrade subtly breaks the mobile nav. A CDN cache decision starts serving stale OG images. None of these are emergencies. All of them are the kind of thing where, if you don’t notice for six weeks, you find out about it from the chair of the club who wonders whether the website is “doing alright.”

I wanted a deliberately small audit pass I could run before each release, and on a schedule.

What I stole from work

The instinct, from work, is to write a tiny suite of browser-driven checks that exercise the actual journeys a visitor cares about - not unit tests against the templating layer. There are roughly four:

  1. Home page renders, and the menu opens on mobile. Both desktop and a phone viewport.
  2. The competitions page lists the right number of upcoming entries. Asserted against a count, not a fixture.
  3. The contact form submits and lands somewhere it should. Without sending real email - Playwright can intercept the POST and check the payload.
  4. A representative gallery page loads its hero image within a reasonable budget. With a real network condition simulated, not a localhost lie.

None of this is novel. It’s the exact pattern I’d expect from a teammate for a service of this size. The point isn’t novelty. The point is that the discipline of which four checks to write - and which forty to deliberately not write - is something I learned at work and is now paying rent at home.

What surprised me

Two things.

Playwright on a hobby project is dramatically more pleasant than Playwright on a complex enterprise service. No internal authentication shims, no flaky third-party portal, no eight environments. Just the public site, locally or via the deployed URL. The fixture-heavy boilerplate that drags down enterprise suites simply isn’t there. A useful audit fits in one file.

The mental shift is the headline. I’d been treating the camera-club site like a hobby project, which it is - but a hobby project is still allowed to have SLOs. Once the audit existed, I had a defensible answer to “is the site OK?” that wasn’t I clicked around for a bit on a Sunday. That answer survives me being on holiday, and it survives the chair of the club asking on a Wednesday.

A small notebook page titled "MONDAY CHECKS" with four short bullet points and three green ticks; a fourth bullet has a question mark

What didn’t port across

A couple of things I’d reach for at work, I didn’t bother with here.

It’s tempting to write more. The thing the work-muscle helps with is not writing more.

The general point

Playwright is free. Knowing that four checks is enough - that you don’t need a hundred - is the bit that came from being paid to learn. The tool ports over without ceremony. The judgement is the thing worth carrying.

Next in the series: the time I quietly slid New Relic underneath my homelab and discovered that “free tier” still means “tier.”

← All writing