Truncating every table between tests costs a statement per table per test; a transaction and a rollback is one of each. The second-connection case produces a genuinely confusing…
Example-based tests check the cases somebody thought of, and the bugs are in the cases nobody thought of — which is a machine’s job. Finding the property is…
Factories were closures in a global registry keyed by class name, which nothing could type-check and no IDE could navigate. States as methods is the change that matters:…
9.3 moved the coverage settings out of the filter element into their own, and the old form is ignored rather than rejected. The failure is silent and reports…
The @expectedException annotation asserts the exception happened somewhere in the method, which passes when it is thrown by the arrangement rather than by the thing under test. Placing…
Truncating every table between tests costs a statement per table per test, which on forty tables and four hundred tests is sixteen thousand statements; a transaction and a…
8.x deprecates a set of assertions with names that were shortened years ago, and 9 removes them — so the warnings are a deadline rather than noise. The…