gpt4 book ai didi

java - 如何测试是否使用正确的参数调用了方法?

转载 作者:行者123 更新时间:2023-12-02 08:07:43 24 4
gpt4 key购买 nike

我的应用程序有两个类:FireWatcherAlarmBell。当火灾发生时,观察员应按响警铃,并保持水平。对于小火灾,以较小的警报级别敲响警铃,对于大火,疯狂地敲响警铃。

class FireWatcher {
AlarmBell bell;
void onFire(int fireLevel) { bell.ring(2 * fireLevel); }
}

class AlarmBell {
void ring(int alarmLevel) { ... }
}

我想测试 FireWatcher 以确保它以正确的级别调用方法环。我怎样才能用 Mockito 做到这一点?

我想要类似于以下内容的内容,但在文档中找不到任何内容。

when(fireWatcher.onFire(1)).expect(mockAlarmBell.ring(2));

最佳答案

您需要传入一个模拟的 AlarmBell

示例:

@Test
public void watcherShouldRingTheAlarmBellWhenOnFire() {
AlarmBell alarm = mock(AlarmBell.class);
FireWatcher watcher = new FireWatcher(alarm);

watcher.onFire(1);

verify(alarm).ring(2);
}

关于java - 如何测试是否使用正确的参数调用了方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7894025/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com