问题标签 [springockito]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
106 浏览

mockito - springockito-annotations 与哪个版本的 Mockito 兼容?

我正在使用(或者更确切地说:尝试使用)Mockito 1.10.19and springockito-annotatinos 1.0.9,但它们彼此不一致。

(我得到了一个ClassNotFoundException: org.mockito.internal.MockitoInvocationHandler并提出了一个错误springockito

有没有人列出了 Mockito 的哪个版本springockito-annotatinos(或者有人成功使用springockito-annotatinos并且可以分享他们使用的 Mockito 版本吗?)

我预计兼容性会像PowerMock 和 Mockito for PowerMockito 之间的兼容性一样令人困惑......

0 投票
1 回答
27 浏览

mockito - 尝试定义 Mockito-stub 会执行模拟方法。为什么?

我们正在尝试定义一个 UnitTest,我们在其中模拟一个对象,我在这里x为简单起见调用它:

即我们希望我们的 UT(此处未显示)稍后不调用该foobar对象上的方法x

奇怪的是,我们在这个 UT 类的初始化过程中得到了一个 NPE。foobar()当传递的参数为空时,方法抛出 NPE 。

事实证明,这个带参数的调用null发生在 -method 的行doNothing()...setup,在我们的理解中,它应该只是定义模拟对象的存根。但相反,它评估any(Event.class)显然产生的 - 表达式null,然后它调用导致 NPE的foobar(...)- 方法。x

除了 NullPointerException,我们还从 Mockito 收到一条错误消息:

为什么呢???为什么我们的存根被认为是“未完成的”?我们在这里缺少什么?

后期补充:

这个问题似乎与类 EventDrivenIssueDeliveryConfirmer用@Transactional 标记的事实有关。删除/评论让 UT 成功。但这当然不是解决方法——我们需要那个注释。至少这提供了搜索方向的提示。@Transactional 引起的包装和 Mockito 完成的包装似乎在这里踩到了对方的脚。