C# 如何为私有方法和只读属性(getter)使用垫片/存根

C# 如何为私有方法和只读属性(getter)使用垫片/存根,c#,get,readonly,C#,Get,Readonly,如何使用垫片上下文覆盖私有方法和只读属性。 喜欢使用 public string FullName { get { return "First" + "Last"; } } 还需要实例化测试中的组件以执行垫片上下文结果 谢谢这对你有用吗 Class A { public virtual string FullName {get {"First" + "Last",}} } ClassB : ClassA { public override string FullName {g

如何使用垫片上下文覆盖私有方法和只读属性。 喜欢使用

public string FullName {
get {
return "First" + "Last";
}
}
还需要实例化测试中的组件以执行垫片上下文结果


谢谢这对你有用吗

Class A {
    public virtual string FullName {get {"First" + "Last",}}
}

ClassB : ClassA {
    public override string FullName {get {"My new name";} }
}

相反,您也可以使用在
ClassB
的构造函数中适当设置的私有支持字段。重写私有方法是不可能的,只有受保护的内部成员或公共成员。

通过上下文访问只读属性是有效的

Fakes.ShimCustomer.AllInstances.FullNameGet = (cust) => 
                {
                    return "Hello World";
                };
UnitTest对上述属性的任何调用都将输出为“Hello World”


谢谢。

我问的是关于赝品的参考资料,单元测试的垫片是私有方法还是只读属性。@Einstine:那么为什么这个信息不在你的问题中?