如何在Pythons 2.7 - 3.5测试期间忽略DeprecationWarning?

时间:2015-12-17 21:27:02

标签: python-unittest python-3.5

在3.5 DeprecationWarning中明确设置为在测试期间显示。

我的软件包适用于2.7 - 3.5,并使用2.7 - 3.4中已弃用的功能。使用替换方法会很痛苦,因为它在3.5之前并不存在,而且它不会在任何地方存在多年(最早在2020年)。

如何在3.5测试期间让DeprecationWarning保持沉默?

我尝试设置PYTHONWARNINGwarnings.filterwarning,在TestCase中使用warnings.filterwarnings创建我自己的__init__,但都无济于事。

1 个答案:

答案 0 :(得分:0)

在2.7和3.2中添加了

setUpClass,在3.1和2.6-中应该忽略。因此,最好的选择是创建自己的unittest.TestCase子类,并将warnings.filterwarnings代码添加到setUpClass函数*。

*不要忘记使用classmethod上的setUpClass装饰器。