0

我正在尝试从 python 脚本中用鼻子收集特定目录中的所有测试。

我的目录结构看起来像

script.py
test_dir/
  testsetA/testA1.py
           testA2.py
           __init__.py
  testsetB/testB1.py
           testB2.py
           __init__.py
  testsetC/...

从 script.py,我像鼻子一样流鼻涕

args = ['-w test_dir/testsetA/', '--collect-only']   
nose.run(argv=args)

问题是,它似乎收集了 testsetA、B、C 等中的所有测试,而不是像我期望的那样只收集 testsetA 中的两个。我可能可以使用 --with-id 选项并找出哪些测试在 testsetA 中,但我宁愿只从我指定的目录中收集测试。有没有办法做到这一点?

4

2 回答 2

2

如果你使用的是 Python 3.X,你应该这样写:

args = ['--py3where', 'test_dir/testsetA/', '--collect-only'] 
于 2014-12-09T16:29:27.120 回答
1

-w您应该从目录中拆分:

args = ['-w', 'test_dir/testsetA/', '--collect-only'] 

否则nose会认为这'-w test_dir/testsetA/是一个单一的论点。

于 2013-02-18T20:56:05.653 回答