Enhancing the Drupal developer experience with a friendlier SimpleTest
I'm partial to automated testing. Tests codify expected behavior, prevent regressions, and expose architectural flaws or awkward DX. My first Drupal core patch was an automated test, and test writing was one of the first tasks I incorporated into the core mentoring initiative. When I review a patch, I look at the tests first to understand what the patch does.
Over the past two years, I've gotten pretty familiar with the quirks of Drupal's SimpleTest module. I've fixed random failures, reduced unnecessary coupling, sped tests up, and helped fix nasty bugs. In fact, I've stared at SimpleTest assertions so often that SimpleTest seems as familiar as an unpleasant family member, and helping mitigate its various flaws has become a pet project for me. Intermittently over the past year, I've debated back and forth with sun about what to do about various aspects of SimpleTest. (Don't worry sun, I won't ever tell SimpleTest about that time you said fixing it was like putting lipstick on a pig.) And, as harsh as it was, I was relieved when fellow core family member msonnabaum took a harder line with SimpleTest, taking away responsibility for things we know cousin PHPUnit can do better.
Today, I have another small suggestion for enhancing the SimpleTest developer experience. It should make living with SimpleTest just a little bit easier. Let me know what you think.