|Pathologically Eclectic Rubbish Lister|
Re: Re: Inheriting Tests and Other Test Design Issuesby tachyon (Chancellor)
|on Sep 27, 2003 at 21:10 UTC||Need Help??|
If anyone now extends the superclass, then either subclasses have untested behaviour or else the implementer has to track down every subclass and cut-and-paste the behaviour.
No, the complete behaviour of the superclass is to an extent immaterial to a widget that uses a subclass of it. As far as the widget's functionality is concerned what needs to happen is for the subclasser to test what is actually in use. That way MY tests fail if MY code is going to fail - this is ultimately what is required of tests. They let you know that some change somewhere has caused some new behaviour. The fact that a test exists means that that behaviour was probably important enough for you to write a test for in the first place and thus you should be concerned.
masses of redundant code loses productivity
A thorough test of subclass behaviour is not, and never will be, redundant. It simply ensures that the subclass continues to behave the way YOU expected when YOU wrote the code that uses it. If that changes (for whatever reason) you probably do have an issue you need to look at.