你也可以看看Nose將發現測試,而無需使用一個固定的文件名約定。
您可以使用以下代碼繞過用於過濾鼻子中文件的正則表達式。 創建一個Python模塊(即my_nosetests.py
)
import nose
from nose.plugins.base import Plugin
class ExtensionPlugin(Plugin):
name = "ExtensionPlugin"
def options(self, parser, env):
Plugin.options(self,parser,env)
def configure(self, options, config):
Plugin.configure(self, options, config)
self.enabled = True
def wantFile(self, file):
return file.endswith('.py')
def wantDirectory(self,directory):
return True
def wantModule(self,file):
return True
if __name__ == '__main__':
includeDirs = ["-w", ".", ".."]
nose.main(addplugins=[ExtensionPlugin()], argv=sys.argv.extend(includeDirs))
現在運行my_nosetests.py
,如果你正在運行nosetests
,你應該有你的測試運行。請注意,您實際上正在加載所有模塊並在其中搜索測試。注意模塊加載的任何副作用。
來源
2010-09-08 18:23:02
Rod
鼻子是件好事! – dmitko 2010-09-08 18:26:40
你可以給一個鼻子的解決方案,我會接受它! – sorin 2010-09-09 13:22:50
使用鼻子在根目錄中使用nosetests或將目錄作爲參數傳遞。默認情況下它會遞歸。 – Rod 2010-09-09 13:49:58