Testing before merging helps ensure that the main branch is always in a good releasable state. However, it also comes at the high cost of keeping each branch alive for an extra couple of days.
In my experience, the longer a branch stays stuck, the greater the hassle for the developers: more difficult merges, more simultaneous mental models of the application to switch between, increased difficulty sharing code. Inevitably, the developers start creating branches off of branches to simplify their situation.
This problem recently came to a head where every bug the testers found had already been identified and fixed in a subsequent branch. While each branch was related to an independent story, since we were creating a new application that was still in its early stages, each change ended up overlapping the same regions anyway.
So the question the team is wondering, is the hassle of testing in-branch really worth it?
Top comments (0)