在使用nosetests运行我的测试套件时,我试图抑制所有sqlalchemy警告。我读了Turn off a warning in sqlalchemy
.............................../Users/ca/.pythonbrew/venvs/Python-2.7.3/api/lib/python2.7/site-packages/SQLAlchemy-0.7.5-py2.7-macosx-10.7-x86_64.egg/sqlalchemy/engine/default.py:330: Warning: Field 'random_id' doesn't have a default value
cursor.execute(statement, parameters)我在我的包的__init__.py文件中包含了以下内容:
def setup_package():
"""Setup the test during the whole session.
Run by nosetests
"""
# Suppress all SQLAlchemy warnings
warnings.filterwarnings("ignore", category=sa_exc.SAWarning)使用适当的导入。我知道它是由nosetests运行的,因为我尝试了其他一些引发错误的东西。唯一的问题是,它没有任何影响。警告仍会显示。
有什么想法吗?
谢谢!
发布于 2016-09-22 21:25:29
看起来鼻子覆盖了你设置的任何东西:
warnings.filterwarnings("ignore")但是,您可以在鼻部测试期间使用命令行选项来过滤警告。例如:
$ nosetests --logging-filter=SAWarning我发现这可能在所有情况下都不起作用。如果是这种情况,您可以尝试:
$ python -W ignore `which nosetests`https://stackoverflow.com/questions/11577644
复制相似问题