Examining diagnostics and extended assertions
How Perl, Python, and Ruby each handle testing assertions
A programmer moving between Perl, Python, and Ruby is unlikely to run in to too many conceptual challenges. There’s new syntax to learn, and there are a few wrinkles: someone new to Perl will have to get used to adding strange characters to the beginning of their variable names, someone new to Python is going to wrap their head around the scoping rules, and someone new to Ruby will probably spend some time trying to understand monkey-patching and Eigen-classes, but the similarities vastly outweigh the differences.
An approach we took at a client where we automatically generated Cucumber scenarios by empirical analysis of code. Introduces concepts from Design By Contract.
When I hear someone start advocating Test-Driven Development as the One True Programming Methodology, that’s a red flag. Testing is about giving you the developer useful and quick feedback about if you’re on the right path, and if you’ve broken something, and for warning people who come after you if they’ve broken something. It’s not an arcane methodology that somehow has some magical “making your code better” side-effect…