猿问

测试初始化​​程序中是否引发了异常

在初始化对象时会引发异常的情况下,测试场景的正确方法是什么?使用给定的代码段:


 def __init__(self, snmp_node: str = "0", config_file_name: str = 'config.ini'):

 [...]

 self.config_file_name = config_file_name

        try:

            self.config_parser.read(self.config_file_name)

            if len(self.config_parser.sections()) == 0:

                raise FileNotFoundError

        except FileNotFoundError:

            msg = "Error msg"

            return msg

我尝试了以下测试:


self.assertTrue("Error msg", MyObj("0", 'nonExistingIniFile.ini')

但是我有一个AssertionError是初始化可能不会返回海峡。


处理这种情况的正确方法是什么?也许有其他解决方法:我只想确保如果用户传递了错误的.ini文件,则程序将不会接受该解决方案。


千巷猫影
浏览 121回答 1
1回答

一只名叫tom的猫

需要init返回None。我想你在找self.assertRaiseswith self.assertRaises(FileNotFoundError):      MyObj("0", 'nonExistingIniFile.ini')
随时随地看视频慕课网APP

相关分类

Python
我要回答