java - 带有 Spock 的 PowerMockito:无法从 java.util.concurrent 模拟类
问题描述
我需要从java.util.concurrent模拟Executors。我的代码如下:
@RunWith(PowerMockRunner.class)
@PowerMockRunnerDelegate(Sputnik.class)
@PrepareForTest([Executors.class, ClassThatCallsExecutors.class])
class WorkerManagerSpec extends Specification {
ExecutorService executorService
def "...."() {
when:"...."
PowerMockito.mockStatic(Executors.class)
PowerMockito.when(Executors.newFixedThreadPool(2)).thenReturn(executorService)
}
}
但我收到power-mockito 版本 1.7.4 的以下错误
> org.mockito.exceptions.misusing.MissingMethodInvocationException:
> [Ljava.lang.Object;@6bea52d4 when() requires an argument which has to
> be 'a method call on a mock'.
有什么办法可以解决这个问题?我怀疑存在一些依赖性问题。
解决方案
推荐阅读
- spring-cloud-stream - 如何在 Spring Cloud Stream Kafka 中创建动态流侦听器?
- memory - 无法从/在 SRAM 中加载/存储数据:读取数据未知
- python - Python:将复杂数组转换为极坐标形式
- javascript - 如何在超时时禁用重新调用 NestJS 控制器?
- javascript - 无效的 csrf 令牌快递
- latex - 如何删除 Latex 中图形和标题之间的空间?
- android - MediaStore.Media.Images Android/ Kotlin:如何向用户隐藏保存在图库中的照片?
- javascript - 将 1 平方公里区域内相同位置的人分组
- c++ - 使用 clang LibASTMatchers 获取文件未找到错误
- ios - productsRequest 从未在应用程序购买中调用 swift 5