我从 RestAssured 呼叫中收到 ContentType 响应text/plain;charset=UTF-8。我搜索了互联网,但无法找到一种很好的方法来从消息中获取内容,因为使用下面的方法不太好;
String content = response.then().extract().body().htmlPath().get().children().get(0).toString();
Run Code Online (Sandbox Code Playgroud)
如何更好地提取此响应的内容?
由于我想在测试中使用来自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();
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,我已经抑制了PowerMockIgnore的一些错误,但是最后一个我无法抑制,希望您能提供帮助。
错误:
ScriptEngineManager provider.next():javax.script.ScriptEngineFactory:提供者jdk.nashorn.api.scripting.NashornScriptEngineFactory不是子类型ScriptEngineManager provider.next():javax.script.ScriptEngineFactory:提供者jdk.nashorn.api.scripting.NashornScriptEngineFactory不是子类型2017-06-09 13:37:24,660主要错误未找到语言javascript的ScriptEngine。可用语言为:2017-06-09 13:37:24,776主警告无法找到名为{}的脚本
供加载的软件包参考;
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;
Run Code Online (Sandbox Code Playgroud) 在我的Eclipse(Kepler 4.3)中,我安装了Checkstyle并使用适当的文件(通过Jenkins进行验证)。尽管如此,我的Eclipse编辑器仍会警告我@SuppressWarnings("checkstyle:parameternumber")
该parameternumber值存在于Checkstyle中,因为某些开发人员没有此问题。但是,我们比较了环境,无法弄清差异。这里有人知道如何解决此问题吗?
public class MyClass {
@SuppressWarnings("checkstyle:parameternumber")
public MyClass(...multiple paramters...){
/*Implementation*/
}
Run Code Online (Sandbox Code Playgroud)
当我删除它@SuppresWarnings时,我从Eclipse收到一个Checkstyle警告,提示我正在使用许多参数。因此,它确实认识到我认为的事实。