【发布时间】:2018-08-26 10:54:39
【问题描述】:
在使用带有 @Capturing 注释的 JMockit 实现单元测试时
和“捕获”变量的验证块我有 2 个结果:
IntelliJ:我可以成功运行和调试,验证验证是否正确。
使用
mvn test使用命令行 (cmd) 执行相同的测试代码会引发“缺少调用”。
如果使用 cmd,@Capturing 的行为似乎类似于 @Mocked。因为如果我将@Capturing 更改为@Mocked,这是确切的行为。
这是什么原因?
设置:
IntelliJ:2017.3.4
Java 8
JMockit 1.35
【问题讨论】:
-
您能否展示一个示例测试,它在 Maven 中失败但在 IntelliJ 中失败?您使用的是什么版本的 Maven 和 Surefire 插件?
-
您好 Rogério,sn-p 如下所示:
-
嗨 Rogerio,由于内部政策,我只能分享有关 cmd 行中提供的错误的最小部分:缺少 1 次调用:manager#execute(任何字符串,任何字符串,任何计算配置,任何 java .util.Map)
-
maven 版本:3.5.2;surefire:2.20.1
-
我需要的是一个重现问题的完整示例测试;不需要是您的真实代码。您提供的代码有很多不必要的细节,并且没有显示任何正在测试的代码。此外,它应该添加到问题中,而不是答案中。
标签: java intellij-idea jmockit maven-surefire-plugin