PowerMock可以在没有注释的情况下使用吗?
问题描述:
我想在另一个应用程序中使用PowerMock作为库。有没有办法使用它来模拟静态方法调用,而不使用注释(我在Clojure中并没有真正做注释)PowerMock可以在没有注释的情况下使用吗?
答
事实上,这是可能的,尽管最终解决方案是痛苦的。
PowerMock runner只是在不同的类加载器中初始化测试环境,其中PrepareForTest
注释中指定的类由Javassist调整。所以假设你模拟类加载器的工作并自己调用Javassist,你可以达到同样的效果。作为一个例子,我利用PowerMock(内部没有注解)来发现给定方法引用的方法名称。更多信息可以在我的blog(捷克语,带有实例)上找到。我强调这样的使用只是实验性的,不适合生产使用。