有没有PowerMock的好替代品



我正在测试一些遗留代码,并尝试使用PowerMock来模拟静态方法调用。我很快发现它搞砸了类加载器,这不是我觉得有资格深入研究的那种问题。仅供参考,我的问题与此类似,但发布在那里的解决方案在我的情况下不起作用。

我是否可以尝试任何好的PowerMock替代品,这些替代品能够模拟静态,与TestNG兼容并成功用于某些实时项目?

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

您有几个选择:

  • 使用允许静态模拟的其他进程内模拟工具,例如 Mockito(Mockito 从版本 3.4.0 开始支持模拟静态方法),以查看您突出显示的问题是否消失。虽然这不是工具问题,而是方法问题,但请阅读下一点。
  • 使用
  • 在线测试替身而不是进程内模拟,这样您就可以测试应用程序黑盒,而不必使用静态模拟或重构代码。您可以通过存根或模拟依赖系统而不是专注于单个类或方法来实现这一目标
    • 支持HTTP在线存根/模拟的开源工具示例是Wiremock
    • 支持多种协议(如HTTP,gRPC和JMS)的商业工具示例是Traffic Parrot
    • 您可以在维基百科上找到更多进行在线模拟和存根的工具

相关内容

  • 没有找到相关文章

最新更新