当前位置: 首页 > 知识库问答 >
问题:

@使用MockitoAnnotations时未调用PostConstruct

陈琪
2023-03-14
@RunWith(MockitoJUnitRunner.class)
public class TestMail{    
    @Autowired(required = true)
    SomeFactory someFactory;
    private @Mock MailService mailService;
    private @Captor ArgumentCaptor<List<MailList>> mailListCaptor;
    @Before
    public void setup() {
        MockitoAnnotations.initMocks(this);
    }  
    @PostConstruct
    public void init() throws Exception {
            logger.info("someFactory {}", someFactory);
    }
}

这是示例代码。在使用mockito或@Beofre注释之前,一切似乎都很好。现在它可以正确地模拟对象,但某些工厂没有正确地自动连接。

在莫基托之前,一切都很顺利。

共有1个答案

严易安
2023-03-14

如果希望将某个工厂的依赖项注入到该工厂,请使用@InjectMocks注释。

http://docs.mockito.googlecode.com/hg/1.9.5/org/mockito/InjectMocks.html

参考Mockito:也将真实对象注入私有@Autowired字段

 类似资料:
  • 我正在使用一个去福尔菲区域从我的基于网络的服务器进行下游访问。当客户端接收数据时,我添加到频道未来的频道进程接收器永远不会被调用。我在使用netty编程方面不是很有经验,所以我认为我误解了nettys渐进式频道未来的工作原理。因此,我在这里查看了我在这里找到的示例代码:programcreek.com.但它基本上是相同的代码?我试图在这里找到类似的问题,但找不到原因。提前感谢您的任何提示,为什么听

  • java.io.ioException:映射项中的类型不匹配:应为org.apache.hadoop.io.text,已收到org.apache.hadoop.mapred.maptask$MapOutputBuffer.Collect(Maptask.java:870)在org.apache.hadoop.mapred.maptask$NewOutputCollector.Write(Mapta

  • 问题内容: 在Obj-C中,常见的做法是使用便利功能执行常见的操作,例如为视图配置自动布局: 如果您只需要设置约束而忘了它,则可以调用: 如果要稍后存储约束以便可以删除/修改约束,则可以执行以下操作: 我想快速执行此操作,但是如果我调用上述函数并且不捕获返回的约束,则会收到警告: 很烦人。有什么方法可以让Swift知道我并不总是想获取返回值吗? 注意:我知道这一点。这很丑陋,而不是我要的东西: 问

  • 我遇到了有趣的意图工作流处理。我创建了一个通知,如下所示: 当通知到达用户时,我希望当他点击它时 MainActivity.class将处理此意图。我在中处理有关意图的信息。 如果我点击应用程序外的通知,一切正常。活动正确地处理了这个意图并显示了我所期望的。 但是当我在我的应用程序中点击通知时,我的和没有触发。我以为它会被创建为的新实例 你能解释一下这是默认行为吗?我应该如何处理这种情况? 在测试

  • 解决方案(更新): 我认为任何操作都会导致react-redux-link调用mapState函数,但是当一个操作没有改变任何事情时,情况就不是这样了。 我有一个localStorage模块,它分派操作,但不更改状态,而是写入localStorage。该模块具有容器中使用的选择器,但在状态实际更改之前不会调用这些选择器,因此只有在调度另一个更改状态的操作后,UI才会正确显示。 问题 当我把商店放在

  • 我知道这是一个经常被问到的问题,但是我已经尝试了我找到的所有方法,但是仍然不起作用。 我在Windows 7(64位)和PHP 5.4.3上使用WAMP 2.2。当我在localhost中调用curl_init()时,我有这个错误消息: 我所做的: 检查WAMP的php扩展中的php\u curl 多次重新启动WAMP 移除;在extension=php\u curl之前。dll在我的两个php中