我的 Android 应用程序中有以下(示例)结构,我正在尝试为其编写单元测试:
class EventMonitor {
private IEventListener mEventListener;
public void setEventListener(IEventListener listener) {
mEventListener = listener;
}
public void doStuff(Object param) {
// Some logic here
mEventListener.doStuff1();
// Some more logic
if(param == condition) {
mEventListener.doStuff2();
}
}
}
我想确保当我传递 的某些值时param
,会调用正确的接口方法。我可以在标准 JUnit 框架内执行此操作,还是需要使用外部框架?这是我想要的单元测试示例:
public void testEvent1IsFired() {
EventMonitor em = new EventMonitor();
em.setEventListener(new IEventListener() {
@Override
public void doStuff1() {
Assert.assertTrue(true);
}
@Override
public void doStuff2() {
Assert.assertTrue(false);
}
});
em.doStuff("fireDoStuff1");
}
我也是 Java 的初学者,所以如果这不是用于测试目的的好模式,我愿意将其更改为更可测试的东西。