PowerMock问题汇总

2022-01-12 11:34:41 浏览数 (1)

PowerMock报错导致无法运行测试类

在执行单元测试时报错如下:

1

ScriptEngineManager providers.next(): javax.script.ScriptEngineFactory: Provider jdk.nashorn.api.scripting.NashornScriptEngineFactory not a subtype

在Stack Overflow上找到了同样的错误,该报错是在使用了PowerMock框架后发生的,奇怪的是,某些同样使用该框架的测试类却不会报错,暂时不明白抛出该异常的根本原因,先记录下解决方法。

在当前测试类里加上一个忽略该异常的注解:@PowerMockIgnore,即可正常运行单元测试,如下:

1 2 3 4 5 6 7

import org.powermock.core.classloader.annotations.PowerMockIgnore; @RunWith(PowerMockRunner.class) @PowerMockIgnore({"javax.script.*"}) public class VendorTest { //.... }

顺带一提,这里使用的PowerMock框架是2.0.2版本的。

参考链接

  • Powermock keeps throwing errors for ScriptEngineManager

注意

本文最后更新于 August 19, 2021,文中内容可能已过时,请谨慎使用。

0 人点赞