防止函数或文件被鼻子运行?

gre*_*abo 2 python testing nose

Nose会自动运行它在项目中找到的任何函数test_*.所以,例如,如果有一个函数叫:

"""
test_server_setup.py
sets up a pristine database to use for testing.
DO NOT RUN ON PROD
"""

def test_server_init():
    drop_all_tables()
Run Code Online (Sandbox Code Playgroud)

...当你nosetests从项目的根目录运行命令时,鼻子会运行它.我唯一的选择是重命名这个函数,还是有另一种方法我可以更改文件,以便鼻子忽略它?

ale*_*cxe 5

nottest装饰器正是你所需要的:

nose.tools.nottest(FUNC)

装饰器将功能或方法标记为不是测试

from nose.tools import nottest

@nottest
def test_server_init():
    drop_all_tables()
Run Code Online (Sandbox Code Playgroud)

要排除鼻子测试发现拾取的文件或目录,请参阅: