如何解决测试是否引发了 ValidationError 奥多14
我想测试是否引发了异常,我该怎么做?
//file.py
def unlink(self):
for rec in self:
if rec.state in ('progress','done'):
raise ValidationError(_('Error!!))
return super(MyClass,self).unlink()
//test_file.py
my_obj.button_validate()
my_obj.unlink()
在函数中添加:my_obj.unlink()时, 我在日志中得到这样的输出:
raise ValidationError(_('Error!!'))
odoo.exceptions.ValidationError: Error!!
解决方法
这个问题可能是重复的,考虑一下 Moe 带来的解决方案here:
使用 TestCase.assertRaises(或 TestCase.failUnlessRaises)来自 unittest 模块,例如:
import mymod
class MyTestCase(unittest.TestCase):
def test1(self):
self.assertRaises(SomeCoolException,mymod.myfunc)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。