gpt4 book ai didi

java - PowerMock 有什么好的替代品吗?

转载 作者:行者123 更新时间:2023-12-04 11:04:19 39 4
gpt4 key购买 nike

我正在测试一些遗留代码并尝试使用 PowerMock 来模拟静态方法调用。我很快发现它与类加载器混淆了,这不是我认为有资格深入研究的问题。仅供引用,我的问题类似于 this但是在我的情况下发布的解决方案不起作用。

PowerMock 有什么好的替代品我可以尝试,它们能够模拟静态,与 TestNG 兼容并在一些现场项目中成功使用?

我知道最好的选择是可测试的代码,但并不总是可以重构我当前的项目。

最佳答案

你有几个选择:

  • 使用不同的进程内模拟工具,允许静态模拟,例如 Mockito (Mockito supports mocking static methods since version 3.4.0),以查看您突出显示的问题是否消失。很可能不是工具问题,而是方法问题,所以请阅读下一点。
  • 使用over-the-wire test doubles而不是进程内模拟,这样您就可以测试您的应用程序黑盒,而不必使用静态模拟或重构代码。您可以通过 stub 或模拟依赖系统而不是专注于单个类或方法来实现这一点
  • 支持 HTTP over-the-wire stub /模拟的开源工具示例是 Wiremock
  • 支持 HTTP、gRPC 和 JMS 等多种协议(protocol)的商业工具示例是 Traffic Parrot
  • 你可以找到更多的工具 over-the-wire mocking and stubbing on Wikipedia

  • 关于java - PowerMock 有什么好的替代品吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34917532/

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