refactoring tip: how to deal with failure overload
Published 2007-02-28 @ 00:47
(to try to make up for the previous rant)
I’ve been making big fundamental changes to ParseTree and consequently ruby2c’s implementation and testing. As a result, I’m drowning in hundreds of failures (869 tests, 2217 assertions, 238 failures, 193 errors). Even though they run fairly fast, autotest isn’t much help at this stage, so I resorted to (*gulp*) manual test runs, but with a small twist:
ruby test/test_type_checker.rb -n "/test_[a-b]/" | unit_diff
This lets me focus on one class, with only about 10 or so failures/errors at a time to keep the clutter down. As my favorite mgr used to say:
“Big alligators, Little alligators, Swamp.”
With this technique, I work from the bottom up and slowly wade through and eventually drain the swamp.