当前位置: 首页 > 知识库问答 >
问题:

RestAssured:验证实体的创建

丁高峯
2023-03-14

我发布了简单的数据,比如

{
"title" : "test Title"
}

到(让它成为)/帖子乌里,例如smth喜欢

RestAssured.baseURI = "http://localhost";
        RestAssured.basePath = "/posts";
        given()
                .contentType("application/json")
                .body("{\n" +
                        "    \"title\": \"test Title\"\n" +
                        "}")
                .when()
                .post("")
                .then().statusCode(201)
                // .and(Verify that post created);
    }

我可以验证,该正文不是空的

.body(notNullValue())

或者检查,响应的字段具有我们正在设置的值,例如

.body("title", equalTo("test Title"))

但我不确定,它的最佳/正确的方式。那么,问题:如何验证,该实体是在发布后创建的,并保证?

共有1个答案

伊羽
2023-03-14

您可以使用 jsonPath 验证响应内容,以确保其正确无误。下面响应获取请求,但您可以对其进行一些修改

import io.restassured.http.ContentType;
import io.restassured.path.json.JsonPath;
import io.restassured.response.Response;

    Response response=given().contentType(ContentType.JSON).get("http://localhost:3000/posts");
              //we need to convert response as a String and give array index
            JsonPath jsonPath = new JsonPath(response.asString());
            String title = jsonPath.getString("title");
    // use index if response returns an array
            String author=jsonPath.getString("author[2]");
            // if it's int 
            int user_id = jsonPath.getInt("user_id");
            System.out.println("title is "+title+" customerName is "+author);
 类似资料:
  • 当我请求GET请求时,我得到了JSON响应,但这里我的要求是验证响应体的结构。 例如: 上面的响应有结构,所以我需要验证结构而不是键值对,我如何实现?

  • 我有一个测试场景,其中Web应用程序中的字段填充了来自json响应的数据。 例如- 为了实现这一点,我了解了RestAsure和HTTP客户端库,但我不确定如何发送请求部分或检索响应,因为在许多情况下响应非常大(超过150个名称值对)。 以下是我尝试过的: 现在,我在 Method.POST 行中遇到错误,它的显示语法错误也使我对是否有其他方法感到困惑。

  • 我收到了针对我的API的错误请求的以下响应。我将RestAssured用于我的rest响应断言。 我需要验证响应的所有属性的值。我正在努力验证此路径:。我无法为它想出GPath。 以下是我所作的断言: 由于路径不正确,断言总是失败。

  • 我正在使用Springboot和Thyemleaf,试图用javax验证我的表单数据。验证。约束注释。 在我的模板中,我使用了一个Thyem立夫命令对象,它是我的模型类。在模型中,我有一些经过验证的字段- 这是用于输入文本/标题的超文本标记语言- 以下是提交表单时endpoint的控制器- 在我的模板中,我可以提交表单,如果或为空并且插入了带有消息的新div,将返回字段错误。 我遇到字段列表问题

  • 当我尝试更新IsApproved=true以批准该属性时,出现以下错误。一个或多个实体的验证失败。有关更多详细信息,请参阅“EntityValidationErrors”属性。验证错误是:请上传图片。;请选择一些属性功能。请帮帮我。提前准备好。我的模型如下: [Table(“AddProperty”)]公共类AddProperty{[Key,DatabaseGenerated(DatabaseGe

  • 带有电子邮件和密码的登录表单。我仍然得到另外两个错误