如何为Rest Assured 3.0.3声明默认解析器(使用Java和TestNG)?

如何为Rest Assured 3.0.3声明默认解析器(使用Java和TestNG)?,java,json,api,parsing,rest-assured,Java,Json,Api,Parsing,Rest Assured,大家好 我是一个公认的Java程序员新手,但我会认真研究文档和常见问题,试图解决过去的问题。然而,这是一个我无法克服的问题。我使用的是RestAssured(版本3.0.3,由Maven拉出来),不能让RestAssured解析“文本/普通”内容(更确切地说,我不能让Java编译代码来解析) 这会编译,但会出现错误: import static io.restassured.RestAssured.*; import static io.restassured.matcher.RestAssur

大家好

我是一个公认的Java程序员新手,但我会认真研究文档和常见问题,试图解决过去的问题。然而,这是一个我无法克服的问题。我使用的是RestAssured(版本3.0.3,由Maven拉出来),不能让RestAssured解析“文本/普通”内容(更确切地说,我不能让Java编译代码来解析)

这会编译,但会出现错误:

import static io.restassured.RestAssured.*;
import static io.restassured.matcher.RestAssuredMatchers.*;
import static org.hamcrest.Matchers.*;

import static io.restassured.module.jsv.JsonSchemaValidator.*;

import org.testng.Assert;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
import org.testng.annotations.AfterClass;

public class TestNG2 {

/*
   userName, passWord and server defined here as protected static Strings
*/
    @Test
    public void filter_Asset(){

        given().
            auth().basic(userName, passWord).
        when().
            get ("http://" + server +"/api/filter?type=$tAsset").
        then().
            statusCode(200).
            body("count", greaterThan(0));
    }
}
错误:

java.lang.IllegalStateException:预期响应正文将验证为JSON、HTML或XML,但不支持开箱即用的内容类型“text/plain”。 尝试使用以下方法注册自定义解析器: registerParser(“text/plain”,)

但是,当我尝试在filter_资产测试中包括以下行时:

RestAssured.registerParser("text/plain", Parser.JSON);
代码将不会编译为以下投诉:

java.lang.Error:未解决的编译问题: 无法解决重新启动问题 无法将分析器解析为变量

当我尝试使用以下声明时,我收到类似投诉:

RestAssured.defaultParser = Parser.JSON;
值得一提的是,我正在一台Windows7,64位的机器上工作。使用EclipseNeon.3(4.6.3)和我的JDK是1.8_131


我已经查阅了重新授权的使用和文档页面,相信我正确导入了软件包,等等。我是否在某个地方犯了新手错误?

这是新手犯的错误

除了静态导入类方法外,编译器还需要导入以下类:

import io.restassured.RestAssured;
import io.restassured.parsing.Parser;
在这些声明之后,我能够在filter_资产测试中注册默认解析器:

RestAssured.registerParser("text/plain", Parser.JSON);
registerParser(“text/plain”,Parser.JSON)