How to test functions that throw exceptions
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
How do you test that a Python function throws an exception?
我必须做白盒和黑盒测试,所以我想知道如何测试一个能控制异常的函数,比如这个函数
1 2 3 4 5 6 7 8 9 10 11 12 | class validator_client(): def validate_client(self,client): erori=[] if client.get_identitate()=="": erori.append("Nu exista ID!") if client.get_nume()=="": erori.append("Nu exista nume!") if (client.get_filme_inchiriate()!="da" ) and (client.get_filme_inchiriate()!="nu") : erori.append("Campul 'Filme inchiriate' completat gresit!") if len(erori)>0: raise ValidatorException(erori) |
我读过一些关于assertrises()的内容,但是我不能用这个方法导入模块,在stackowerflow上找到了这个:
1 2 3 4 5 6 7 8 9 | from testcase import TestCase import mymod class MyTestCase(TestCase): def test1(self): self.assertRaisesWithMessage(SomeCoolException, 'expected message', mymod.myfunc) |
但我不能让它工作。
这是一个工作示例,它是您将在python文档中找到的简化版本。它检查
1 2 3 4 5 6 7 | import random, unittest class TestSequenceFunctions(unittest.TestCase): def test_shuffle(self): self.assertRaises(TypeError, random.shuffle, (1,2,3)) unittest.main() |