Running Tests in Parallel on CI: Shards, Workers and Merging Reports
Why CI Duration Is the First Wall You Hit A browser test suite grows the way application features grow: one spec file at a time. Nothing feels slow on the day you add it. Then…
Why CI Duration Is the First Wall You Hit A browser test suite grows the way application features grow: one spec file at a time. Nothing feels slow on the day you add it. Then…
Which Part of an AI Agent Cannot Be Tested An agent that calls tools, hits APIs and moves through states is mostly ordinary software. Input validation, prompt assembly, tool dispatch, retry logic, state transitions, response…
Mocks Passed, Production Broke: A Familiar Story Most integration failures in a microservice estate are not coding errors. They are stale assumptions. A consumer team wrote a mock for GET /orders/42 eighteen months ago, the…
Your suite passes on your machine and fails in CI. You run one test with –grep and it fails, though the whole file is green. The cause is almost always the same: setup lives in…
What Breaks Your Regression Suite Is Data, Not Tests When a nightly regression run comes back with fourteen red tests and the code hasn’t changed, the cause is almost never the tests. It’s the state…
Why Tool Selection Still Happens on the Wrong Criteria Most tool decisions I see defended in RFC documents rest on three arguments: the syntax feels nicer, the tool is popular right now, or the team…
What a Flaky Test Is — and What It Isn’t A flaky test is a test that produces different results on the same commit, in the same environment, without anything in the application changing. Run…
The Problem Starts With Shared Test Data Your suite passes locally and fails in CI. It passes with one worker and fails with four. It passes when you run the file alone and fails when…