【发布时间】:2021-02-17 21:55:50
【问题描述】:
我有一个对象 AClazz,其中包含另一个对象 BClazz。当在 AClazz 上调用方法时,它会模拟更改 BClazz 的状态。
class AClazz(){
BClazz b;
public void begin(){
b.start();
}
}
class BClazz{
private boolean running = false;
public void start(){
running = true;
}
public boolean isRunning(){
return running;
}
}
我想在 AClazz 类上编写单元测试 - 以测试当 begin() 被调用时,BClazz 的状态被相应地设置。 BClazz 实际上不应该被调用,但是方法 isRunning() 的行为会被模拟
AClazz a;
BClazz b;
// inject b into a
// Mockito.when(a.begin( (//should invoke b.start())) ) such that b.isRunning() returns true
有什么办法吗?
【问题讨论】:
标签: java unit-testing dependency-injection mockito