2010-09-16 242 views
4

我从我的代码导入的第三方模块的nosetest得到的弃用警告。nosetest弃用警告

有人知道如何沉默这些警告吗?

我知道下面的标志,该标志适用于相同的代码的任意Python运行的:

python -W ignore::DeprecationWarning 

但是,调用nosetest不会出现我提供一个类似的标志,以防止在测试中出现的警告报告。

+0

可能重复的[如何忽略Python中的弃用警告](http://stackoverflow.com/questions/879173/how-to-ignore-deprecation-warnings-in-python) – Gilles 2012-05-14 08:20:32

回答

3

import warnings 
warnings.filterwarnings('ignore', category=DeprecationWarning) 

在你的测试脚本的开始,你导入任何问题库之前。

+0

@landstatic:对不起,不清楚。我的意思是上面的代码应该放在“test.py” - 你写的脚本中。 – unutbu 2010-09-16 16:15:10

+0

,似乎没有帮助不幸。我的test.py导入implementation.py :-)依次导入thirdparty.py,这是导致我的弃用警告的悲哀......我的test.py fixtures踢了python subprocesses,它也因为依赖相同的方法而产生警告第三方库,但我通过添加-W ignore :: DeprecationWarning来解决这些问题,因此只会将nosetest自己的Python进程归咎于控制台上出现的警告。除非我错过了一些东西。 – codeasone 2010-09-16 17:01:05

+1

@landstatic:您是否在所有其他导入之前放置了'warnings.filterwarnings'命令? – unutbu 2010-09-16 17:37:59