1
我正在使用Moq框架在一個vb.net項目中進行測試。VB.net Moq公共共享函數
我現在的情況是我想測試一個函數,它內部有一個來自另一個類的「公共共享函數」調用,我喜歡moq這個調用。 的情況類似於
'Sub in Main Class
Public Sub StartProcess()
Dim total As Integer = CommonData.GetTotal()
...
End Sub
'Function in CommonData class
Public Shared Function GetTotal()
...
Dim total As Integer = database.GetTotal()
...
Return total
End Sub
的事情是,我可以起訂量的數據庫調用來獲得我想要的數據,因爲不是一個共享對象 但我喜歡做的起訂量CommonData.GetTotal避免一切內部執行 有沒有辦法做到這一點?
感謝Dominic,這是我的想法,我更喜歡不使用這個接口,因爲我在整個應用程序中使用了這個類,它很容易訪問而不需要實例化。 也許我可以改變成單身模式來混合使用這兩種方法。 謝謝 – ajimenez
你當然可以換個角度:將共享函數的代碼放入一個實現了接口的非共享類/函數中,讓共享函數在該接口上工作(並將實例存儲將在共享領域工作)。然後,您可以保留使用共享函數的代碼。 – sloth
查看我的編輯例子。 – sloth