Categories
Agile Software

Hoist by my own petard

So, this morning we had our iteration retrospective, and one of the things I brought up under “what should we do differently?” was that we seemed to be breaking the build a lot. We’d got out of the habit of always running the acceptance tests before committing even minor changes, and the build often stayed red for an hour or two while the culprit figured out what had gone wrong and fixed it. We all agreed to take more care in future.

Then this afternoon, I checked in a tiny change, affecting one RHTML file and a CSS stylesheet, just to add a search box to the top of the page layout. No code involved – what could possibly go wrong?

Oops.

Build failure

That’s two thirds of our acceptance test cases failing.

Turns out we had a lot of brittle acceptance tests, which relied on just submitting the first (and only) form in the page. Two-and-a-half hours and 37 modified files later (and long after I’d intended to go home) I’d added IDs to all the submit buttons and fixed the Selenium files to click them explicitly.

That’ll teach me.

Leave a Reply