2012-01-07 192 views

回答

1

根据powermock支持和this blog,我猜想没有办法避免注释在测试中。但我想我们需要@PrepareForTest(StaticClass.class)。所以我相信至少可以避免@PrepareForTest。可能是我错了,但只是想分享我发现的东西。

0

事实上,这是可能的,尽管最终解决方案是痛苦的。

PowerMock runner只是在不同的类加载器中初始化测试环境,其中PrepareForTest注释中指定的类由Javassist调整。所以假设你模拟类加载器的工作并自己调用Javassist,你可以达到同样的效果。作为一个例子,我利用PowerMock(内部没有注解)来发现给定方法引用的方法名称。更多信息可以在我的blog(捷克语,带有实例)上找到。我强调这样的使用只是实验性的,不适合生产使用。

相关问题