使用rhino模拟测试从抽象类到基类的调用

Jel*_*lle 2 unit-testing rhino-mocks

如果有以下课程

public abstract class MyBaseClass : BaseClass
{
    public override string Test(string value)
    {
        return value == null ? value : base.Test(value);
    }
}
Run Code Online (Sandbox Code Playgroud)

使用部分模拟我实际上可以测试测试代码的第一部分(值为null).是否有可能测试这样一个事实,即当值!= null时,实际上是对基类的调用完成了吗?

Mar*_*ann 6

不,你不能这样做,因为你的Test方法已经覆盖了基本方法,并且没有普通的dymaic mock可以拦截MyBaseClass.Test调用base.Test.

这是一个更详细的解释,虽然它与Moq有关.但是,同样的论点适用于Rhino Mocks,这就是原因.