python unittest assertRaises lança exceção quando assertRaises falha
Eu tenho o código onde assertRaises lança uma exceção quando assertRaises falhar. Eu pensei que se assertRaises falhar, o teste falharia e eu obteria um relatório no final que informava que o teste falhou. Eu não esperava que a exceção fosse lançada. Abaixo está o meu código. Eu estou fazendo algo errado? Estou usando o Python 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)