第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用IoC進行單元測試

使用IoC進行單元測試

C#
翻翻過去那場雪 2019-07-06 16:48:31
使用IoC進行單元測試如何使用IoC容器進行單元測試?使用IoC管理大型解決方案(50+項目)中的模擬有用嗎?有什么經(jīng)驗嗎?任何在單元測試中使用它的C#庫都很好嗎?
查看完整描述

3 回答

?
烙印99

TA貢獻1829條經(jīng)驗 獲得超13個贊

一般來說,對于單元測試來說,DI容器不應(yīng)該是必需的,因為單元測試都是關(guān)于分離責(zé)任的。

考慮使用構(gòu)造函數(shù)注入的類。

public MyClass(IMyDependency dep) { }

在整個應(yīng)用程序中,可能隱藏了一個巨大的依賴圖IMyDependency,但在單元測試中,您可以將其簡化為單個試驗雙倍.

您可以使用動態(tài)模擬(如Moq或RhinoMocks)來生成TestDouble,但它不是必需的。

var dep = new Mock<IMyDependency>().Object;var sut = new MyClass(dep);

在某些情況下,自動模擬容器擁有它可以很好,但是您不需要使用生產(chǎn)應(yīng)用程序使用的相同的DI容器。


查看完整回答
反對 回復(fù) 2019-07-06
?
慕斯王

TA貢獻1864條經(jīng)驗 獲得超2個贊

如何使用IoC容器進行單元測試?

IoC將實施編程范例,從而使單元測試更容易(即使用模擬):接口的使用,沒有新的(),沒有單個的.

但是使用IoC容器進行測試并不是一個真正的要求,它只是提供一些工具,例如注入模擬,但您可以手動完成。

使用IoC管理大型解決方案(50+項目)中的模擬有用嗎?

我不知道你用IoC管理模仿是什么意思。無論如何,IoC容器在測試時通??梢宰龅牟粌H僅是注入模擬。如果您有良好的IDE支持,使重構(gòu)成為可能,為什么不使用它呢?

有經(jīng)驗嗎?

是的,在一個巨大的解決方案上,您比以往任何時候都更需要一個不容易出錯和重構(gòu)不利的解決方案(即通過類型安全的IoC容器或良好的IDE支持)。


查看完整回答
反對 回復(fù) 2019-07-06
  • 3 回答
  • 0 關(guān)注
  • 647 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號