我想在我的C#單元測試程序中使用NSubstitution。在c#中的方法的NSub取代?
我想對mehtod內部調用的方法進行替換。 這裏有一個例子:
public class operation
{
public int addition(int a, int b)
{
return (a + b);
}
}
public class anotherClass
{
public int increment(int ax, int bx)
{
operation loc = new operation();
ax = loc.addition(ax,bx);
return (ax + 1);
}
}
是否可以調用增量()方法在我的主要功能和應用替代的加入()方法?
我想在increment()方法中調用addition()方法時強制返回值。例如迫使一個ecxeption投擲。
此外,我無法編輯代碼,因此添加接口實現將不是一個好的解決方案。
請說明您的具體問題或添加額外的細節亮點正是你所需要的。正如目前所寫,很難確切地說出你在問什麼。請參閱如何問問頁面以獲取幫助以澄清此問題。 – mybirthname
我爲目標增加了更多的清晰度。 @mybirthname –
NSubstitute總是返回一個新的對象,你可以重寫這些方法(假設你用一個虛擬方法替代了一個接口或一個類),它不會改變現有的對象或「普通的」.NET對象。既然你正在構建一個新的'操作'在所討論的方法中,你不能改變那個新的對象,你必須首先讓NSubstitute創建它的替代變體,然後你必須把這個方法和讓它使用這個新的對象而不是創建它自己的。 –