【问题标题】:nose.run() seems to hold test files open after the first runnose.run() 似乎在第一次运行后保持测试文件打开
【发布时间】:2012-09-01 05:42:42
【问题描述】:

我在 Windows 和 Linux 上遇到了同样的问题。我启动任何各种 python 2.6 shell 并运行nose.py() 来运行我的测试套件。它工作正常。但是,我第二次运行它,之后每次都得到完全相同的输出,无论我如何更改代码或测试文件。我的猜测是它以某种方式保留了文件引用,但即使删除 *.pyc 文件,在我重新启动 shell 或打开另一个 shell 之前,我永远无法更改 nose.run() 的输出,于是问题又开始了在第二次运行。 del nosereload(nose) 都试过了,都没用。

【问题讨论】:

    标签: python unit-testing nose


    【解决方案1】:

    在一些外部帮助下解决了*。我不认为这是正确的解决方案,但是通过在 sys.modules 中搜索我的所有 test_modules(指向 *.pyc 文件)和deling 它们,nose 终于再次识别出变化。我必须在每次调用 nose.run() 之前删除它们。这些必须是 pyc 文件的内存版本,因为只是在 shell 中删除它们并没有这样做。现在已经足够了。

    编辑:

    *显然我没有完全解决它。它似乎确实工作了一段时间,然后突然就不再工作了,我必须重新启动我的 shell。现在我更加困惑了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-25
      • 1970-01-01
      • 2017-01-01
      • 1970-01-01
      相关资源
      最近更新 更多