Powermock 不断为 ScriptEngineManager 抛出错误
Powermock keeps throwing errors for ScriptEngineManager
由于我想在我的测试中使用 JUnit 中的类别,我不得不使用 PowerMock(EasyMock 之上的 powermock 来模拟静态)重写一些模拟测试。从 RunWith(PowermockRunner.class) 到下面;
@Category(ServerTests.class)
@PrepareForTest(EnvironmentConfig.class)
@PowerMockIgnore( {"javax.management.*", "org.w3c.dom.*", "org.apache.log4j.*", "org.xml.sax.*", "javax.xml.*"})
public class JmsHelperTest {
@Rule
public PowerMockRule rule = new PowerMockRule();
}
不幸的是,我已经用 PowerMockIgnore 抑制了一些错误,但最后一个我无法抑制,希望你能帮忙。
错误:
ScriptEngineManager providers.next():
javax.script.ScriptEngineFactory: Provider
jdk.nashorn.api.scripting.NashornScriptEngineFactory not a subtype
ScriptEngineManager providers.next():
javax.script.ScriptEngineFactory: Provider
jdk.nashorn.api.scripting.NashornScriptEngineFactory not a subtype
2017-06-09 13:37:24,660 main ERROR No ScriptEngine found for language
javascript. Available languages are: 2017-06-09 13:37:24,776 main
WARN No script named {} could be found
加载包参考;
import mypackage.EnvironmentConfig;
import mypackage.category.ServerTests;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.experimental.categories.Category;
import org.powermock.core.classloader.annotations.PowerMockIgnore;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.rule.PowerMockRule;
import static org.easymock.EasyMock.expect;
import static org.hamcrest.core.Is.is;
import static org.junit.Assert.*;
import static org.powermock.api.easymock.PowerMock.mockStatic;
import static org.powermock.api.easymock.PowerMock.replay;
我专注于 jdk.nashorn.*
,但是当我将 javax.script.*
添加到 @PowerMockIgnore
时,它解决了错误。
由于我想在我的测试中使用 JUnit 中的类别,我不得不使用 PowerMock(EasyMock 之上的 powermock 来模拟静态)重写一些模拟测试。从 RunWith(PowermockRunner.class) 到下面;
@Category(ServerTests.class)
@PrepareForTest(EnvironmentConfig.class)
@PowerMockIgnore( {"javax.management.*", "org.w3c.dom.*", "org.apache.log4j.*", "org.xml.sax.*", "javax.xml.*"})
public class JmsHelperTest {
@Rule
public PowerMockRule rule = new PowerMockRule();
}
不幸的是,我已经用 PowerMockIgnore 抑制了一些错误,但最后一个我无法抑制,希望你能帮忙。
错误:
ScriptEngineManager providers.next(): javax.script.ScriptEngineFactory: Provider jdk.nashorn.api.scripting.NashornScriptEngineFactory not a subtype ScriptEngineManager providers.next(): javax.script.ScriptEngineFactory: Provider jdk.nashorn.api.scripting.NashornScriptEngineFactory not a subtype 2017-06-09 13:37:24,660 main ERROR No ScriptEngine found for language javascript. Available languages are: 2017-06-09 13:37:24,776 main WARN No script named {} could be found
加载包参考;
import mypackage.EnvironmentConfig;
import mypackage.category.ServerTests;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.experimental.categories.Category;
import org.powermock.core.classloader.annotations.PowerMockIgnore;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.rule.PowerMockRule;
import static org.easymock.EasyMock.expect;
import static org.hamcrest.core.Is.is;
import static org.junit.Assert.*;
import static org.powermock.api.easymock.PowerMock.mockStatic;
import static org.powermock.api.easymock.PowerMock.replay;
我专注于 jdk.nashorn.*
,但是当我将 javax.script.*
添加到 @PowerMockIgnore
时,它解决了错误。