用鼻子在单个Python文件中运行测试

时间:2016-09-12 19:14:16

标签: python unit-testing nose

我正在使用鼻子1.3.7与Anaconda 4.1.1(Python 3.5.2)。我想在单个文件中运行单元测试,例如foo.py。根据{{​​3}}我应该能够简单地运行:

nosetests foo.py

但是当我这样做时,nose会在目录中的所有文件中运行所有测试!

如果我执行nose --help,则使用文档甚至不会指示存在参数。它只显示[选项]。

那么我可以使用nose在单个文件中运行测试吗?

2 个答案:

答案 0 :(得分:1)

我有一个独立的Python 3.4版本,nosetests foo.py仅在foo.py运行测试,而nosetests spam.py仅在spam.py中运行测试。

没有指定任何选项的普通nosetests命令在目录中名称以test_开头的所有文件中运行测试。

这里引用他们的test discovery文档,其中指定了测试发现的规则。文档的最后一行阐明了可能导致异常的原因。

  

请注意,插件和命令行选项可以更改其中任何一个   规则。

我怀疑(我可能错了)它与anaconda如何为你的安装配置鼻子有关。

答案 1 :(得分:0)

请确保您在要测试的文件中没有m_docFactory is org.apache.xerces.jaxp.DocumentBuilderFactoryImpl@f20d394c m_docBuilder is org.apache.xerces.jaxp.DocumentBuilderImpl@a7ce296c m_doc is [#document: null] nose.run()