It has been quite some time since JUnit
was last updated. However Kent Beck
doesn’t believe that this is such as bad thing according to Ed Burnette’s
entry in Dev Connection. In that entry Kent Beck is noted as saying that JUnit was in a useful state but now the time had come for Eric Gamma and himself to adapt to JSE 5.0.
A number of things convinced us to start it up again. One was the appearance of other testing frameworks [like TestNG], and the other was the new features in Java 5.
The design goals of the original design included, approachability, isolation of tests, minimization of overhead, and flexibility. In the latest release, Kent and Eric made good use of the new language features to simplify the new framework. They have used the annotations @Test, @Before, and @After to eliminate the need to extend TestCase. Yet the JUnit 4.0 is fully backwards compatible.
Ed also covers a bit of the history of JUnit which strangely enough owe it’s existence to a trans-Atlantic flight. In creating this small but useful framework Kent feels that he learned a number of important lessons. Included in the lessons learned was the notion that the availability of a tool can facilitate change.
Has JUnit changed the way you work?