Rumah > Java > javaTutorial > Bagaimana untuk Menguji Kesamaan Objek JSON Mengabaikan Pesanan Kanak-kanak di Java?

Bagaimana untuk Menguji Kesamaan Objek JSON Mengabaikan Pesanan Kanak-kanak di Java?

Susan Sarandon
Lepaskan: 2024-11-05 01:17:02
asal
479 orang telah melayarinya

How to Test JSON Object Equality Ignoring Child Order in Java?

Menguji Kesamaan Objek JSON Mengabaikan Pesanan Kanak-kanak dalam Java

Apabila unit menguji respons JSON daripada perkhidmatan web, adalah penting untuk membandingkan keputusan untuk kesaksamaan . Walau bagaimanapun, susunan elemen anak dalam objek JSON tidak boleh menjejaskan perbandingan. Untuk menangani cabaran ini, mari kita terokai perpustakaan penghuraian JSON yang sesuai.

Penyelesaian: JSONAssert Skyscreamer

JSONAssert Skyscreamer menawarkan mod tidak ketat yang menampung dua keperluan utama:

  • Kebolehlanjutan objek: Membenarkan medan tambahan dalam objek JSON sebenar yang tidak terdapat dalam objek JSON yang dijangkakan.
  • Pemesanan tatasusunan longgar: Menganggap tatasusunan dengan susunan elemen berbeza sebagai sama.

Contoh Ujian

<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>
Salin selepas log masuk

Dalam contoh ini, objek JSON yang dijangka menentukan tatasusunan rakan dengan ID 123 dan 456. Objek JSON sebenar mungkin mempunyai medan tambahan atau susunan elemen yang berbeza dalam tatasusunan. JSONAssert akan tetap menganggapnya sama dalam mod tidak ketat.

Atas ialah kandungan terperinci Bagaimana untuk Menguji Kesamaan Objek JSON Mengabaikan Pesanan Kanak-kanak di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan