There is an article on the Legolas in Minas Tirith blog which is about Unit Testing. The posting state that Unit Testing (in the form of JUnit or TestNG) is kind of flawed because it tests implementations of an interface.
So if you create a new implementation of the interface, you have to create a new test.
So the suggestion is to talk something from Design By Contract and connect it with Unit Testing. So Unit Testing is concerned with testing the Contract definied by an interface. So every implementation has to fullfill the contract of the interface.
With TestedBy, tests declared on an interface (or a superclass) can be run upon all implementers to verify they’re respecting the behaviour and contract defined in the super type. IOW the API designer not only provides the interfaces, but also a set of test classes verifying expected behaviour. Then every implementer would supply its own implementation and run the tests provided by the API designer against its concrete classes to verify they are respecting not only type safety but also beahviour/contract safety for which the API was designed. TesteBy here invokes a test defined for an interface passing to test class a concrete instance of class implementing the interface under test.
More on this topic can be read in A new approach to unit tests.