0

RestAssured を使用して Json を 1 つ投稿し、すべてのフィールドが正しい値でデータベースに格納されていることを確認する必要がある後、Json は次のとおりです。

{
    "id": "1",
    "name": "name1",
    "description": "description1",
    "source": "source1",
    "target": "target1",
    "domain": "PM",
    "transformation_rules": [
        {
            "name": "name2",
            "filters": [
                {
                    "object": "object1",
                    "pattern": "pattern1"
                }
            ],
            "operations": [
                {
                    "pattern": "pattern2",
                    "replacement": "replacement1"
                }
            ]
        },
        {
            "name": "name3",
            "filters": [
                {
                    "object": "object2",
                    "pattern": "pattern2"
                }
            ],
            "operations": [
                {
                    "pattern": "pattern3",
                    "replacement": "replacement2"
                },
                {
                    "pattern": "pattern3",
                    "replacement": "replacement3"
                },
                {
                    "pattern": "pattern4",
                    "replacement": "replacement4"
                }
            ]
        }
    ],
    "conflict_policy": "ACCEPT_SOURCE"
}

ので、私は持っています :

responseGet = RestAssured.given().contentType(ContentType.JSON).when().get(urlApi + "/" + id);

私の最初の検証は:

responseGet.then().body("$[0]['id']", equalTo("1"));

フィールド「id」が1に等しいことを確認するには、うまく実行されないため、次のように変更します。

responseGet.then().body("$.id", equalTo("1"));

そして同じ結果 ---> 失敗

すべての Json をテストするための提案を教えてください。参考までに、 https ://github.com/json-path/JsonPath を適用してみます。

事前にどうもありがとうございました、

よろしくお願いします、

4

1 に答える 1