gpt4 book ai didi

java - @InjectMocks 注解。 java代码模拟

转载 作者:行者123 更新时间:2023-11-30 09:16:50 24 4
gpt4 key购买 nike

我想在一种方法中使用模拟 eventService,在另一种方法中使用真实的 eventService。

   @Mock(name = "eventService")
private EventService eventService;

@InjectMocks
private CandidateMenuController candidateMenuController = new CandidateMenuController();

如何在方法中编写模拟此代码。我有 CandidateMenuController candidateMenuController 作为类字段。但在一种方法中,我想使用特定的 eventService 实现。

P.S没有 构造函数并为EventService 设置get 方法

最佳答案

由于您没有任何setter 方法来设置EventService 的值,您可以使用反射来设置EventService 的值:

@Test
public void testWithRealization() {
Field field = candidateMenuController.getClass().getDeclaredField("eventService");
field.set(candidateMenuController, new EventServiceImpl());

// Test Code
}

关于java - @InjectMocks 注解。 java代码模拟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19271107/

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