- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在发布简单的数据,例如
{
"title" : "test Title"
}
到(顺其自然)/posts uri,例如类似
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"))
但我不确定它的最佳/正确方式。那么问题来了:如何验证该实体是在发布后使用restAssured 创建的?
最佳答案
您可以使用 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);
关于java - 放心 : verify creation of entity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59393318/
例如,我们的响应中有 JSON: {"data":[{"id":1,"active":false},{"id":2,"active":true}]} 通过使用 expect().body("data"
我有这个 json 对象 { "type" : "employee", "columns" : [ { "id" : 1,
当我通过 response.getBody().asString() 将 JSON 主体转换为字符串时,它会在 JSON 响应中丢失换行符。如何保留它们并在控制台输出中显示? 如果我使用简单的 GET
从以下 json 响应中,我正在读取元素 - packageId public static void main(String[] args) { String jsonString
我知道什么是放心,它用于什么目的, cucumber 也是如此。 但问题是我们可以使用 Rest 保证器实现的目标,就像我们可以使用 Cucumber 进行测试一样。 请放心,只需调用 Web 服务并
示例测试: @Test public void shouldGetRoutesList() { Response response = given()
如何在其余测试中将 Accept 和 contentType 设置为 json 项目范围? given() .accept(ContentType.JSON)
我有以下代码可以测试我的 RESTful API: given().baseUri("http://...").get("/categories/all") .then() .body
如果响应 json 是一个空列表,我如何检查 rest-assured (2.4.0)? 鉴于响应 [](带有 header content-type=application/json),我尝试了:
我有用于按名称查找用户的 REST,对于某些搜索词,它会返回在名字或姓氏中包含该词的用户。 GET /search/joe 返回 json 数组: [ {"id": 1, "firstName":
我是 RestAssured api 测试的新手,在运行我的基本代码时遇到异常。我已经添加了所有必需的 jar 并尝试了在线提供的所有建议,但仍然无法找到解决方案。请有人帮助我。提前致谢。 代码 im
我想用 Rest Assured 测试我的休息服务,但当服务返回负零值时我的测试失败。 放心测试: String methodName="multiply"; float[] oper
我正在使用 RestAssured 测试 API。 我调用的方法正在使用下一个注释: @PreAuthorize("hasAnyRole('ROLE1', 'ROLE2', 'ROLE3')") 我的
我需要序列化依赖于 JAXB 注释的 POJO 对象。我可以使用 Jackson 轻松完成此操作(添加 JaxbAnnotationIntrospector)。无需任何显式编码就可以吗? 如果能够像这
这是我的 JSON: [ { "id": 9741962, "name": "getName", "isActive": true }, { "id": 1,
我正在发布简单的数据,例如 { "title" : "test Title" } 到(顺其自然)/posts uri,例如类似 RestAssured.baseURI = "http://localh
我是新人,放心。我已尝试使用以下代码来获取响应 @Test public void getData() throws IOException { Response respo
我正在尝试在java上实现一种方法,确保找到查询JSON文件的值。为此,我使用 io.restassured.path.json.JsonPath 库中的 JSONPath 的 findAll 方法来
我正在尝试测试我正在做的一个小型休息服务,以使用放心来学习。我听从了这个人视频的建议:https://www.youtube.com/watch?v=yDdBOspPp_c 但是在实现该帖子时说:无法
我需要使用 REST Assured Jsonpath 根据匹配条件获取计数值 我尝试了以下方法,但它不起作用: response().jsonPath().getString("{it.B == '
我是一名优秀的程序员,十分优秀!