被稱爲可以說我有具有以下成員懲戒的測試方法,這些方法在同一界面和內
public interface IDataService
{
Employee TestMethodA();
Employee TestMethodB();
}
public class DataService : IDataService
{
public Employee TestMethodA()
{
return new Employee() {Id = 10, Name = "Montu Pradhan"};
}
public Employee TestMethodB()
{
var emp = TestMethodA();
return emp;
}
}
public class Employee
{
public int Id { get; set; }
public string Name { get; set; }
}
然後我需要通過嘲笑治法來測試方法方法b的接口。我有以下固定裝置,但控制仍然進入MethodA。我正在使用JustMock作爲測試框架。
[TestClass]
public class UnitTest1
{
[TestMethod]
public void TestInterfaceMock()
{
var pensionMock = Mock.Create<DataService>();
Mock.Arrange<Employee>(() => pensionMock.TestMethodA())
.Returns(new Employee() {Id = 101,Name = "Mock Employee"});
var result = pensionMock.TestMethodB();
Assert.AreEqual(result.Name, "Mock Employee");
Assert.AreEqual(result.Id, "Mock Employee");
}
}