Heim > Java > javaLernprogramm > Wie können Sie JSON-Objekte testen, die die untergeordnete Reihenfolge ignorieren?

Wie können Sie JSON-Objekte testen, die die untergeordnete Reihenfolge ignorieren?

Barbara Streisand
Freigeben: 2024-11-05 00:06:02
Original
543 Leute haben es durchsucht

How Can You Test JSON Objects Ignoring Child Order?

Testen der Äquivalenz von JSON-Objekten unter Missachtung der untergeordneten Reihenfolge

Beim Testen von JSON-Daten, die von Webdiensten zurückgegeben werden, ist es wichtig, über eine entsprechende JSON-Parsing-Bibliothek zu verfügen Es besteht die Möglichkeit, zwei JSON-Objekte zu vergleichen und dabei die Reihenfolge der untergeordneten Elemente zu ignorieren. Dies ist für Unit-Tests von entscheidender Bedeutung und stellt sicher, dass der JSON-Inhalt dem erwarteten Format entspricht, ohne auf eine bestimmte untergeordnete Reihenfolge angewiesen zu sein.

JSONAssert: Eine effektive Lösung

Unter verschiedenen JSON-Bibliotheken JSONAssert von Skyscreamer zeichnet sich durch seine Fähigkeit aus, JSON-Objekte zu vergleichen und dabei die untergeordnete Reihenfolge außer Acht zu lassen. Sein nicht-strikter Modus bietet die folgenden Vorteile:

  • Objekterweiterbarkeit: Ein erwarteter Wert wie {id:1} würde mit {id:1,moredata:'x'} übereinstimmen. .
  • Lose Array-Reihenfolge: Arrays wie ['dog','cat'] und ['cat','dog'] als gleich angesehen werden.

Beispielverwendung

Um JSONAssert zu verwenden, könnte eine Testmethode wie folgt geschrieben werden:

<code class="java">@Test
public void testGetFriends() {
    JSONObject data = getRESTData("/friends/367.json");
    String expected = "{friends:[{id:123,name:\"Corby Page\"}"
        + ",{id:456,name:\"Solomon Duskis\"}]}";
    JSONAssert.assertEquals(expected, data, false);
}</code>
Nach dem Login kopieren

In diesem Beispiel ist „expectedJSONString“ der erwartete JSON, „actualDataString“ der tatsächliche JSON und „isStrict“ wird zur Aktivierung auf „false“ gesetzt Nicht-strikter Modus.

Fazit

JSONAssert bietet eine robuste Lösung zum Testen von JSON-Objekten unter Ignorieren der untergeordneten Reihenfolge. Sein nicht strenger Modus bietet Flexibilität und Genauigkeit und reduziert die Sprödigkeit von Unit-Tests.

Das obige ist der detaillierte Inhalt vonWie können Sie JSON-Objekte testen, die die untergeordnete Reihenfolge ignorieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage