Ich habe die folgende Behauptung in meinen JUnit-Tests für meinen Frühling basierend Ruhe-ControllerFrühling JUnit Test - JSONPath für Integer Passenden
.andExpect(jsonPath("$..terminationPoint.downstreamSpeedKbps", is(Integer.valueOf(500))));
diese Behauptung gegen die folgende Nutzlast gemacht wird:
{
"result":[
{
"terminationPoint":{
"downstreamSpeedKbps":500
}
}
]
}
und ich erhalte die folgende Fehlermeldung, wenn die Behauptung lautet:
java.lang.AssertionError: JSON path "$..terminationPoint.downstreamSpeedKbps"
Expected: is <500> but: was <[500]>
keine Idee wh Bevor diese eckigen Klammern herkommen oder was bedeuten sie?
Die erste Lösung funktioniert, die zweite gibt den folgenden Fehler zurück: 'Erwartet: ist [<500>] aber: war <[500]>' –
@SamanthaCatania Sie haben Recht. Die zweite Lösung wurde entfernt. Solange Sie das json-Array als Ergebnis haben, ist es besser, den Index des Ergebnisses zu verwenden –