Mockito:如何存根 getter setter

2024-01-07

我对 Mockito 有点陌生,我想知道如何存根 get/set 对。

例如

public interface Dummy {
     public String getString();
     public void setString(String string);
}

我怎样才能让他们表现得正确:如果我在测试中调用setString("something");我想getString()返回“某物”。这是可行的还是有更好的方法来处理这种情况?


我还希望 getter 返回最近 setter 调用的结果。

Having

class Dog
{
    private Sound sound;

    public Sound getSound() {
        return sound;
    }
    public void setSound(Sound sound)   {
        this.sound = sound;
    }
}

class Sound
{
    private String syllable;

    Sound(String syllable)  {
        this.syllable = syllable;
    }
}

我使用以下方法将 setter 连接到 getter:

final Dog mockedDog = Mockito.mock(Dog.class, Mockito.RETURNS_DEEP_STUBS);
// connect getter and setter
Mockito.when(mockedDog.getSound()).thenCallRealMethod();
Mockito.doCallRealMethod().when(mockedDog).setSound(Mockito.any(Sound.class));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Mockito:如何存根 getter setter 的相关文章

随机推荐