python unittest assertRaises zgłasza wyjątek, gdy assertRaises nie powiedzie się

Wcześniej otrzymałem kod, w którym assertRaises zgłasza wyjątek, gdy assertRaises nie powiedzie się. Pomyślałem, że jeśli assertRaises zawiedzie, test nie powiedzie się, a na końcu otrzymam raport mówiący, że test się nie powiódł. Nie spodziewałem się, że wyjątek zostanie rzucony. Poniżej znajduje się mój kod. Robię coś źle? Używam Pythona 2.6.2.

import unittest

class myClass:

    def getName(self):

        raise myExcOne, "my exception one"
        #raise myExcTwo, "my exception two"
        #return "a"

class myExcOne(Exception):
    "exception one"

class myExcTwo(Exception):
    "exception two"


class test_myClass(unittest.TestCase):

    def setUp(self):

        self.myClass = myClass()

    def testgetNameEmpty(self):
        #self.assertRaises(myExcOne,self.myClass.getName)
        #self.assertRaises(myExcTwo,self.myClass.getName)

        try:
            self.assertRaises(myExcTwo,self.myClass.getName)
        except Exception as e:
            pass

if __name__ == "__main__":

    #unittest.main()

    suite = unittest.TestLoader().loadTestsFromTestCase(test_myClass)
    unittest.TextTestRunner(verbosity=2).run(suite)

questionAnswers(2)

yourAnswerToTheQuestion