Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.
  • At Socialtext, we had a similar problem with long test suite runs. The solution was to set up a system exclusively for running the test suite repeatedly. It'd check out various branches (including trunk), run the tests, and update Smolder. Smolder would email people watching the branch if tests failed.

    Since we did all our unstable dev on branches (back then), this meant that we saw test failures well before they got merged to trunk, and usually we saw them within an hour or two of the actual checkin, making

    • Running the whole test suite before committing the merge to trunk is a given. That's not the problem, the trade-off between time and stability is very easy.

      The problem we have is when we are too many people working on the same thing, in the same branch (generally one branch per feature).

      So if you check in, breaking something, it's not so bad if it only affects you. Even if you don't know about it until an hour later, you still know what you were doing you know it's up to you to fix it.

      The problem is when something breaks and you don't know who did it. That's the real time waster, having multiple developers sitting there investigating a failure because they all think the broke the build.

      This is only a problem some of the time. Mostly the features are small enough, and there aren't too many people involved.

      • Thanks for clarifying that. I should have pointed that out.

      • To clarify. At Socialtext, when we did this sort of thing (this was 2 years back and I hear things have changed), we had many, many branches. Most branches belonged to very few devs (often 1), and were for one feature or one bug fix. Some branches lasted only a commit or two.

        That limited the scope of whow as affected by breakage that was caught by the smoke tester.

        The problem is, even getting a full test run down to 7 minutes (from 30, say) is still way,way too long to run all that often. When something tak