[英]Test that the exception has been raised within initializer
測試初始化對象時會引發異常的方案的正確方法是什么? 使用給定的代碼段:
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')
但我得到的初始化可能不會返回STR一個AssertionError。
處理這種情況的正確方法是什么? 也許有其他解決方法:我只想確保如果用戶傳遞了錯誤的.ini文件,該程序將不會接受。
需要init返回None。 我認為您正在尋找self.assertRaises
with self.assertRaises(FileNotFoundError):
MyObj("0", 'nonExistingIniFile.ini')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.