[英]How to mock a method that is called multiple times in single call using Moq in C#.NET?
[英]How to create mock for method that is called using object instance in MOQ C#?
我為使用MOQ和NUnit進行測試的方法創建了Test。 要測試的方法將是使用該相應類的對象的另一種方法。 當我嘗試模擬被調用的方法時,我無法調用模擬的方法。 如何模擬此方法,因為我的測試方法正在使用其他所說的方法。 請幫我。
public DataSet ExecuteCondition()
{
var ObjClass1 = new Class1();
....
var result = ObjClass1.VerifyPrecondition(query);
....
}
public class Class1:IClass1
{
public string VerifyPrecondition(string query)
{
....
return text;
}
}
所以,我想這應該像這樣:
具有ExecuteCondition()方法的類:
public class DataClass
{
private readonly IClass1 _class1;
public DataClass(IClass1 class1)
{
_class1 = class1;
}
public DataSet ExecuteCondition()
{
//....
var result = _class1.VerifyPrecondition(query);
//....
}
}
測試:
[Test]
public void Test()
{
var mockClass1 = new Mock<IClass1>();
mockClass1.Setup(x => x.VerifyPrecondition(It.IsAny<string>())).Returns("test");
var dataClass = new DataClass(mockClass1.Object);
dataClass.ExecuteCondition();
//Assert
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.