0
モックだけが使用できます。 ディープモック(交換方法付き)
#tested.py
from somemodule import somelogger
class MyClass(object):
def __init__(self):
self.logger = somelogger()
def do_smth(self):
self.logger.log(message)
重要詳細:モジュールsomemodule
が存在しない、@patchのようなので、通常のソリューションスイートはありません。私はこれを行う方法としてunittest.mock.patch
メソッドを使用することだと思う
some_message
この例を試してみましたか?どのようなPythonのバージョンですか? – sann05
これはPython 3.6用です。私はもっと複雑なシステムでも同様の模倣を行い、すべてうまくいった。 2.7.xを使用している場合、まずモックをインストールし、unittest.mockではなくmockをインポートする必要があります。 – suripoori
申し訳ありませんが、私は一つの決定的な詳細を欠場しました:モジュールのモジュールモジュール**はありません** ** ** ** ** **存在している**。だから私たちがインポートしようとすると、私たちは常にImportErrorを取得します:No module ** somemodule ** – sann05