Roy Smith wrote: > I'm writing a test suite for a web application. There is a subclass of > TestCase for each basic page type. [...] > class CommonTestCase(unittest.TestCase): > def test_copyright(self): > self.assert_(find copyright notice in DOM tree) > > class HomepageTestCase(CommonTestCase): [...] > This works fine as far as HomepageTestCase running test_copyright() and > test_whatever(). The problem is that CommonTestCase *also* runs > test_copyright(), which fails because there's no setUp(), and thus no > retrieved page for it to work on.
Rename the function to _test_copyright and then in the derived class either call it or just test_copyrigth = CommonTestCase._test_copyright > Is there a cleaner way to define some common test methods which all of > my test cases can inherit, without having them be run in the base class? I haven't tried it, but you could put the test into a separate baseclass that doesn't derive from unittest.TestCase. All tests that pull a page and need to check for this then add this class to the baseclasses. Uli -- Sator Laser GmbH Geschäftsführer: Thorsten Föcking, Amtsgericht Hamburg HR B62 932 -- http://mail.python.org/mailman/listinfo/python-list