请放心,当 json 中的键具有点运算符时,json 路径响应验证未按预期工作

rest assured json path response validation is not working as expected when key in json is having dot operator

如何使用 json 下面的放心 json 路径获取键 organization.email 的值 json response

 {
    "organization.email": [
        "The organization.email has already been taken."
     ]
 }

这是使用的放心测试代码。

package com.api.tests;
import org.testng.annotations.Test;
import io.restassured.path.json.JsonPath;
public class JsonTest {
    @Test
    public void test1() {
        String jsonString = "{\r\n"
                + "    \"organization.email\": [\r\n"
                + "        \"The organization.email has already been taken.\"\r\n"
                + "    ]\r\n"
                + "}";
        JsonPath jsonPath = JsonPath.from(jsonString);
        String value = jsonPath.getString("$['organization.email'][0]");
        System.out.println("value is:"+value);
    }
}    

字符串变量值的值在 ide 控制台中显示为空。已验证
许多 json 路径在线网站中的 json 路径是正确的。但是关键值 打印为 null

您可以选择以下方法之一。

jsonPath.getString("'organization.email'[0]");

jsonPath.getString("get('organization.email')[0]");

jsonPath.getString("getAt('organization.email')[0]");