首页 > 解决方案 > 如何在 Junit5 和 JDK11 中使用 Powermock?

问题描述

我正在尝试使用 Powermock 模拟静态方法。当我在 Junit4、JDK8 环境中使用它时,该代码有效。但是,Powermock 不适用于 JDK11 和 Junit5 的组合。当我查看 Powermock 文档时,它说已为 Junit 4.7+ 添加了支持。所以我的理解是它应该适用于 Junit5。没有提到JDK。所以无论版本如何,它都会支持 Java 吗?

我尝试在 pom.xml 中使用 Powermock 和 Junit5 的各种组合。但似乎没有任何效果。谁能帮助我处理 Powermock、Junit5 和 JDK11 的工作组合(依赖项)?这种组合甚至可以一起工作吗?

编辑:我在某处看到 Junit5 不适用于 Powermock。但这是 2018 年的一个帖子。到 2020 年还提供支持吗?任何有关这方面的信息都会有很大帮助。

标签: javajunitpowermockjunit5

解决方案


我花了 3 天时间尝试不同的组合。截至 2020 年 2 月,我相信 Junit5 不支持 Powermock。所以,更好的选择是选择 Jmockit。我已经使用 Jmockit 模拟了静态方法。

我想写这篇文章是因为它可能会节省一些人的时间。虽然,如果有人在 Powermock Junit5 组合中模拟过静态方法。请张贴。


推荐阅读