运行鼻子测试并将警告作为错误?

2024-03-12

跑步时nosetests从命令行,如何指定“不可忽略”警告应被视为错误?

默认情况下,会打印警告,但不计为失败:

[snip]/service/accounts/database.py:151: SADeprecationWarning: Use session.add()
  self.session.save(state)
[snip]/service/accounts/database.py:97: SADeprecationWarning: Use session.add()
  self.session.save(user)
............
----------------------------------------------------------------------
Ran 12 tests in 0.085s

OK

由于我们不希望我们的代码生成警告,所以我不希望出现这种情况OK.

Thanks!

Edit:理想情况下,我想要的是一个nosetests命令行选项,它发出warnings.simplefilter('error')每次测试之前(并在之后清理)。

任何涉及使用的解决方案warnings测试代码中的模块似乎没有达到目的。我不想手动编辑每个测试模块以将警告转换为错误。另外,我不希望每个测试模块的作者能够忘记“打开”警告错误。


nosetests是一个小的 Python 脚本。用编辑器打开,添加-W error在第一行的末尾。这告诉 Python 解释器将警告转换为异常。

更简单的是使用 Python 环境变量注入“将警告视为错误”标志:

PYTHONWARNINGS=error nosetests test/test_*.py --pdb
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

运行鼻子测试并将警告作为错误? 的相关文章

随机推荐