2013-12-22 116 views
5

我试图运行与鼻试验,这里是项目结构:鼻子运行测试两次

ForTest 
├── test_module 
│   └── test_suite.py 
└── test_runner.py 

test_suite.py包含:

def test_1(): 
    pass 


def test_2(): 
    pass 

和test_runner.py包含未来:

import nose 

nose.main(argv=['','-v']).run_and_exit() 

当我运行test_runner.py我有输出中的下一个内容:

test_suite.test_1 ... ok 
test_suite.test_2 ... ok 
test_suite.test_1 ... ok 
test_suite.test_2 ... ok 

---------------------------------------------------------------------- 
Ran 2 tests in 0.002s 

OK 

鼻子运行测试两次。如果我连接自己的插件,我可以看到,例如,mehtod addSuccess()调用4次。你能解释我吗,为什么我会得到这种行为,我该如何预防它?

回答

4

您可以将您的test_runner.py重命名为runner.py,这样鼻子不会将您的测试跑步者视为测试本身。

0

如果您在您的测试文件中使用setup_module()和teardown_module(),并定义: @with(setup_module,teardown_module)

高清TEST_1():

pass 

,那么你需要从你的文件中删除@with(setup_module,teardown_module),这会让你的测试运行两次。

相关问题