4

私は鼻 1x プラグインを作成しようとしています。多くのメソッドを起動することができないようです。

例えば:

import logging
import os

from nose.plugins import Plugin

logging.basicConfig(filename='example.log',level=logging.DEBUG)

class MyPlugin(Plugin):
    name = 'My Plugin'

def options(self, parser, env=os.environ):
    logging.debug("in options")    

def configure(self, options, conf):
    super(NoseSauce, self).configure(options, conf)
    if not self.enabled:
        return

def begin(self):
    logging.debug("in begin")

def finalize(self, result):
    logging.debug("in finalize")

ログファイルには次のように表示されます。

DEBUG:nose.plugins.manager:DefaultPluginManager load plugin config = testconfig:TestConfig
DEBUG:root:in options
DEBUG:root:in configure

したがって、これらのメソッドは起動していないようです。たとえば、finalize() のログはありません。noise.tools.base を見ると、Plugin クラスにはいくつかのメンバーしかありませんが、「IPluginInterface」にはすべてのメソッドが定義されていますが、実際のコードではなくキーワードが渡されていることがわかります。私はこれらすべてについて不明確です。Python にはインターフェイスがないと思っていました。たとえあったとしても、このインターフェイスがどこにも使用されていません。

4

0 に答える 0