java - 如何使用所需参数模拟 Runnable 子类的 run() 方法
问题描述
我有一个实现 Runnable 接口的事件类。如何为这个类编写单元测试?
@Component("Event")
@RequiredArgsConstructor
@Slf4j
public class Event implements Runnable {
private final Person person;
private final Student student;
@Override
public void run() {
//somecode;
}
}
解决方案
在查看了多个帖子后,我终于得到了解决方案。由于@RequiredArgsConstructor
参数创建 Event 类的对象不会通过没有争论的构造函数发生。单元测试用例类中的代码:
@Mock Person person;
@Mock Student student;
@Injectmocks Event event;
@Test
private void testfunction(){
Event event = new Event(person,student);
event.run();
//mockito.verify()...
}