为什么使用PowerMockRule进行引导测试会影响使用PowerMockRunner进行引导的测试?

时间:2014-11-17 09:49:00

标签: java powermock

我有几个测试使用PowerMockRule来引导以避免类加载问题,因为它在PowerMockito的文档中是推荐的:

  

基于代理的引导程序和基于类加载的引导程序之间的主要区别在于,在使用XML框架等时不会遇到类加载问题。当使用PowerMock进行集成测试时,建议使用这种引导方式。系统

在同一个测试包中,我有使用PowerMockRunner和@RunWith注释的测试。我在这些测试中遇到了意想不到的问题:

java.lang.VerifyError: Expecting a stackmap frame at branch target 12
Exception Details:
  Location:

    javax/xml/bind/JAXBContext.newInstance([Ljava/lang/Class;Ljava/util/Map;)Ljavax/xml/bind/JAXBContext; @1: ifnonnull
  Reason:
    Expected stackmap frame at this location.
  Bytecode:
    0000000: 2ac7 000b bb00 3d59 b700 3ebf 2abe 0464
    0000010: 3d1c 9b00 172a 1c32 c700 0bbb 003d 59b7
    0000020: 003e bf84 02ff a7ff eb2a 2bb8 0040 b0  

为什么PowerMockRule会影响使用PowerMockRunner的测试?

如果我删除使用PowerMockRule的测试,那么一切正常。

0 个答案:

没有答案