gpt4 book ai didi

java - 如何模拟来自第三方库的类的静态调用

转载 作者:行者123 更新时间:2023-11-30 11:35:02 25 4
gpt4 key购买 nike

我想知道是否可以使用 PowerMock 或任何其他库来模拟库中类中的静态调用。该第三方库中的类调用了 rt.jar 中的一个类,我想要返回该返回的 Type 的自定义实现。我正在尝试在测试代码之外执行此操作。

否则,我必须从该库中扩展一些类并替换一些实现。以前有人做过这样的事情吗?

最佳答案

是的,这是可能的,例如如果您只想模拟一种方法,请使用 PowerMock.mockStatic()PowerMock.mockStaticPartial()

PowerMock主页上有一个很好的教程。

我发布了 an example on SO .

[编辑] 但是,如果您想在生产代码中使用这种魔法,我建议不要使用测试框架。也许Groovy可以帮助您 - Groovy 可以在运行时操作类(甚至 JDK 类),并且(我认为)它是 JVM 之上的一个更薄的层。

关于java - 如何模拟来自第三方库的类的静态调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15334511/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com