我有一个Python类,它的__init__方法引发一个名为WrongFileSpecified的自定义异常。在
然而,当我编写一个单元测试时,我想从测试夹具中分配实例对象的属性。所以通常我要做的是从文件中读取数据,然后使用实例对象。在
但是对于测试,我不能使用任何测试文件,所以我基本上需要在单元测试的setUp方法中对实例对象中的数据进行硬编码。有什么方法可以在不__init__抱怨异常的情况下创建实例吗?在
样本代码:class A(object):
def __init__(self, folderPath):
#check folder path using os.isdir() otherwise raise exception
#...
self.folderPath = folderPath
#Call load record
self._load_records() #uses self.folderPath and raises exceptions as well
#Note i cannot avoid raising these exceptions, its required
class TestA(unittest.TestCase):
.......
obj = None
def setUp(self):
obj = A('fake folder path')
obj.val1 = "testparam1"
obj.param2 = "testparam2"
def test_1(self):
.....