luk*_*kas 30 java junit unit-testing easymock powermock
我正在junit使用PowerMock测试运行器运行测试用例.我正在使用以下命令行来执行它:
java -cp .:junit-4.9b2.jar:easymock-3.0.jar:powermock-easymock-1.4.8-full.jar org.junit.runner.JUnitCore SampleTest
Run Code Online (Sandbox Code Playgroud)
这样做时,我收到此错误:
initializationError(SampleTest)
java.lang.NoClassDefFoundError: org/junit/internal/runners/TestClassRunner
...
Run Code Online (Sandbox Code Playgroud)
我该如何解决?
Ron*_*onK 82
我刚刚解决了这个,当我添加@RunWith(PowerMockRunner.class)属性时,eclipse自动导入:
import org.powermock.modules.junit4.legacy.PowerMockRunner;
Run Code Online (Sandbox Code Playgroud)
我需要做的就是改变它:
import org.powermock.modules.junit4.PowerMockRunner;
Run Code Online (Sandbox Code Playgroud)
现在它可以正常使用JUnit 4.8.2.
第二个跑步者适用于旧版本的运行JUnit- 特别是旧版本4.3.
小智 5
当您在使用 JUnit 4.X 或更高版本时导入 PowerMockRunner.class 的旧版本时会发生此异常,因为此旧类在与 @RunWith 注释一起使用时无法运行。我通过用新版本替换旧的旧版本导入解决了这个问题。
不正确的导入:
import org.powermock.modules.junit4.legacy.PowerMockRunner;
Run Code Online (Sandbox Code Playgroud)
正确导入:
import org.powermock.modules.junit4.PowerMockRunner;
Run Code Online (Sandbox Code Playgroud)
我解决了这个问题。我使用旧版本junit-4.0.jar。但我仍然不明白为什么缺少 TestClassRunner 类,尤其是在 powermock-easymock-junit-1.4.8.zip 包中(有 junit-4.8.2.jar)?junit-4.8.2.jar 也缺少 TestClassRunner 类。
| 归档时间: |
|
| 查看次数: |
34820 次 |
| 最近记录: |