python - nosetests -h 运行失败并报错

标签 python nosetests

我怀疑我没有正确安装 nosetests。 我使用了 easy_install nose - 输出是

Searching for nose
Best match: nose 1.0.0
Processing nose-1.0.0-py2.7.egg
nose 1.0.0 is already the active version in easy-install.pth
Installing nosetests-script.py script to C:\Python27\Scripts
Installing nosetests.exe script to C:\Python27\Scripts
Installing nosetests-2.7-script.py script to C:\Python27\Script
Installing nosetests-2.7.exe script to C:\Python27\Scripts

所以它看起来安装得很好。但是当我运行 nosetests -h 时

PS C:\Users\john\code\python> nosetests -h
Traceback (most recent call last):
  File "C:\Python27\Scripts\nosetests-script.py", line 9, in <module>
    load_entry_point('nose==1.0.0', 'console_scripts', 'nosetests')()
  File "C:\Python27\lib\site-packages\nose-1.0.0-py2.7.egg\nose\core.py", line 118, in __init__
    **extra_args)
TypeError: __init__() got an unexpected keyword argument 'exit'

我是否错过了设置步骤?

最佳答案

奇怪。在 nose/core.py 中,TestProgram 构造函数调用父构造函数,如下所示:

...
extra_args = {}
version = sys.version_info[0:2]
if version >= (2,7) and version != (3,0):
    extra_args['exit'] = exit
unittest.TestProgram.__init__(
    self, module=module, defaultTest=defaultTest,
    argv=argv, testRunner=testRunner, testLoader=testLoader,
    **extra_args)

unittest/main.pyTestProgram 的构造函数接受 exit 参数:

class TestProgram(object):
    ...
    def __init__(self, module='__main__', defaultTest=None, argv=None,
                    testRunner=None, testLoader=loader.defaultTestLoader,
                    exit=True, verbosity=1, failfast=None, catchbreak=None,
                    buffer=None):
        ...

所以...我不知道这个错误是怎么发生的。您是否安装了更多版本的 Python?您的 nosetests 是否真的使用了适用于 Python 2.7 的正确 unittest 模块?你能看看 unittest\main.py(在你的 C:\Python27 中的某个地方)并检查 TestProgram 构造函数,它是否有 exit 参数?

关于python - nosetests -h 运行失败并报错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6003354/

相关文章:

python - 如何将 pandas 的 DataFrame 转换为 Spark 中的 DataFrame 或 LabeledPoint?

python - 谷歌应用引擎: unitest works nosetest fails

python - 如何使用 nosetests 从输出中删除调试

python - 如何强制Python忽略re.findall()语句中的re.DOTALL?

python - 如何使用 beautifulsoup 提取字体标签中的文本

python - 在Python中将对象数据类型的内容转换为日期数据类型

python - Dask Dataframe groupby 没有 len()

python - 如何在单元测试期间使用 Nosetests 分析代码?

Python:在nose/unittest中使用日志信息?

testing - 如何测试程序是否退出