我在Windows和Linux上遇到同样的问题。我启动任何各种python 2.6 shell并运行nose.py()来运行我的测试套件。它工作正常。但是,第二次运行它,并且每次我得到完全相同的输出,无论我如何更改代码或测试文件。我的猜测是它以某种方式保留文件引用,但即使删除* .pyc文件,我也永远不会得到nose.run()的输出更改,直到我重新启动shell,或打开另一个,然后问题再次开始在第二轮。我试过del nose
和reload(nose)
都无济于事。
答案 0 :(得分:0)
在一些外界的帮助下解决了它。我不认为这是正确的解决方案,但通过sys.modules搜索我的所有test_modules(指向* .pyc文件)和del
它们,鼻子终于再次识别更改。我必须在每次nose.run()调用之前删除它们。这些必须是pyc文件的内存版本,因为简单地在shell中删除它们并没有这样做。现在好了。
修改强>
*显然我并没有完全解决它。它确实似乎有点工作,然后突然它不再了,我必须重新启动我的shell。现在我更加困惑了。