<p>我在学python</p>
<p>我想知道是否有一种机制可以将一个对象(在我的例子中是一个伪对象)“注入”到被测类中,而不显式地将它添加到costructor/setter中。在</p>
<pre><code>## source file
class MyBusinessClass():
def __init__(self):
self.__engine = RepperEngine()
def doSomething(self):
## bla bla ...
success
## test file
## fake I'd like to inkject
class MyBusinessClassFake():
def __init__(self):
pass
def myPrint(self) :
print ("Hello from Mock !!!!")
class Test(unittest.TestCase):
## is there an automatic mechanism to inject MyBusinessClassFake
## into MyBusinessClass without costructor/setter?
def test_XXXXX_whenYYYYYY(self):
unit = MyBusinessClass()
unit.doSomething()
self.assertTrue(.....)
</code></pre>
<p>在我的测试中,我想“注入”对象“引擎”,而不把它传递给构造器。我尝试过几个选项(例如:@patch…)但没有成功。在</p>