簡體   English   中英

模擬類中的類實例

[英]Mocking class instances inside a Class

我正在為我制作的wsgi服務器編寫測試。 __init__構造函數中的服務器類將其他類的2個實例作為成員。 讓我們說

def __init__(self):
  self.a = A()
  self.b = B()

在測試期間,我如何模擬self.a和self.b作為我為他們制作的模擬類而不是使用A和B?

#I use this if I want to mock the entire server class
@mock.patch('myproject.server.MyServerClass',autospec=True)

我寫的python越多,我對這種情況就越好奇。 我傾向於引入依賴注入並在構造函數中傳入創建的A和B類。 這樣可以很容易地看到外部依賴關系並在需要時更改它們。 但有時這太過分了。 你不能只是:

server = Server()
server.a = MockA()
server.b = MockB()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM