[英]Python: handle sys.exit in unit tests?
我有一个可以执行操作或可以返回sys.exit()
的管理命令。
我正在尝试在单元测试中处理第二种情况:
with self.assertRaises(SystemExit) as cm:
call_command('geocode_practices', *args, **opts)
self.assertEqual(cm.exception, 1)
但这给了我:
AssertionError: None != 1
我究竟做错了什么?
另外,处理不同情况的最佳方法是什么? 目前,如果脚本未退出,我的测试将失败。
显然, with
块中的代码不会引发异常。 请注意, sys.exit()
仅引发SystemExit
异常。
即使这样做,异常也不会等于1。如果不是None
,则cm.exception
属性包含异常实例,而不是数字。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.