2016-05-13 25 views
15

Tôi đang cố gắng để viết một bài kiểm tra đơn vị sử dụng PowerMockRunner nhưng tôi đã nhận được lỗi sau:mở rộng API lỗi nội bộ: org.powermock.api.extension.reporter.MockingFrameworkReporterFactoryImpl

java.lang.IllegalStateException: Extension API internal error: org.powermock.api.extension.reporter.MockingFrameworkReporterFactoryImpl could not be located in classpath. at org.powermock.tests.utils.impl.AbstractTestSuiteChunkerImpl.getFrameworkReporterFactory(AbstractTestSuiteChunkerImpl.java:190) at org.powermock.modules.junit4.common.internal.impl.JUnit4TestSuiteChunkerImpl.getMockingFrameworkReporter(JUnit4TestSuiteChunkerImpl.java:140) at org.powermock.modules.junit4.common.internal.impl.JUnit4TestSuiteChunkerImpl.run(JUnit4TestSuiteChunkerImpl.java:119) at org.powermock.modules.junit4.common.internal.impl.AbstractCommonPowerMockRunner.run(AbstractCommonPowerMockRunner.java:53) at org.powermock.modules.junit4.PowerMockRunner.run(PowerMockRunner.java:59) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)

Tôi đã kiểm tra tất cả các phụ thuộc và ok, tôi có cần gì khác không?

Trả lời

16

Sau khi đăng câu hỏi tôi đã tìm thấy câu trả lời, có vẻ như đó là vấn đề với phiên bản 1.6.5, nó cần phụ thuộc bổ sung, nó được mô tả here.

Các phụ thuộc là powermock-api-Mockito-chung phiên bản 1.6.5, bạn có thể thêm nó vào bạn pom.xml

<dependency> 
    <groupId>org.powermock</groupId> 
    <artifactId>powermock-api-mockito-common</artifactId>  
    <version>1.6.5</version> 
</dependency> 

hoặc tải về jar

+0

Ai đó có thể gửi một tập tin zip có chứa các JAR? Giải pháp này nên khắc phục vấn đề này. – javaPlease42

+0

không làm việc cho tôi, nhưng thay vào đó tôi có thay thế nullpointer –

2

Sau khi thêm

<dependency> 
    <groupId>org.powermock</groupId> 
    <artifactId>powermock-api-mockito-common</artifactId>  
    <version>1.6.5</version> 
</dependency> 

chúng tôi đang nhận được - "java.lang.IllegalStateException: Lỗi nội bộ của API tiện ích: org.powermock.api.extension.proxyframework.ProxyFrameworkImpl không thể được đặt trong đường dẫn lớp."

Để giải quyết vấn đề này thêm dưới đây phụ thuộc cũng -

<dependency> 
      <groupId>org.powermock</groupId> 
      <artifactId>powermock-api-mockito</artifactId> 
      <version>1.5.1</version> 
      <scope>test</scope> 
</dependency> 

bây giờ nó làm việc tốt

Các vấn đề liên quan