JSONPath-testaaja

Testaa JSONPath-lausekkeita JSON-dataan ja näe täsmäävät arvot sekä polut reaaliajassa kirjoittaessasi.

JSON-syöte
Täsmäävät arvot
Syötä JSON-data ja testattava JSONPath-lauseke.

JSON-tietosi ja JSONPath-lausekkeesi testataan selaimessasi. Mitään ei ladata BroBroGo-palveluun.

UKK

Mitä JSONPath-syntaksia voin käyttää?

Voit käyttää yleisiä JSONPath-malleja, kuten $.store.book[*].title, rekursiivista laskeutumista muodossa $..price, suodattimia kuten [?@.price < 10] sekä taulukon osituksia (slices).

Miksi jokainen tulos näyttää polun?

Polku näyttää, mistä kohdasta lähde-JSON-dataa arvo löytyi, jotta voit kopioida osuman menettämättä sen sijaintitietoa.

Miksi kysely voi aikakatkaista?

Erittäin laajat rekursiiviset kyselyt tai valtavat aineistot voivat kestää liian kauan. Testaaja keskeyttää ne lyhyen aikarajan jälkeen, jotta voit tarkentaa lauseketta tai käyttää pienempää esimerkkidataa.

JSONPath-lausekkeiden testaaminen ja datan valinta

JSONPath on tehokas kyselykieli, jonka avulla voidaan hakea ja suodattaa tietoa JSON-rakenteista. JSONPath-testaaja on suunniteltu auttamaan kehittäjiä, testaajia, datainsinöörejä ja tukihenkilöitä ymmärtämään tarkasti, mitä arvoja tietty JSONPath-lauseke poimii annetusta JSON-datasta. Työkalun avulla voidaan syöttää JSON-dataa ja JSONPath-lausekkeita, jolloin se näyttää välittömästi täsmäävät arvot sekä niiden tarkat polut alkuperäisessä JSON-rakenteessa. Tämä helpottaa yksittäisten arvojen kopioimista siten, että niiden alkuperäinen sijaintitieto säilyy.

Kyselyiden suorittaminen ja testaaminen tapahtuu kokonaan paikallisesti. JSON-tietosi ja JSONPath-lausekkeesi testataan selaimessasi, eikä mitään ladata BroBroGo-palveluun.

Syötteet ja niiden rajoitukset

Työkalu vastaanottaa kaksi pääsyötettä, joita arvioidaan reaaliaikaisesti:

  1. JSON-syöte: Tekstikenttä, johon liitetään tutkittava JSON-data. Syötteen enimmäiskoko on 500 000 merkkiä. Jos tämä raja ylittyy, työkalu keskeyttää käsittelyn ja näyttää virheilmoituksen: "Tämä JSON-data on liian suuri testattavaksi tässä. Kokeile pienempää esimerkkidataa.".
  2. JSONPath-lauseke: Tekstikenttä, johon kirjoitetaan testattava kysely. Lausekkeen enimmäispituus on 4 000 merkkiä. Jos syötetty lauseke ylittää tämän pituuden, näytetään virheilmoitus: "Tämä JSONPath-lauseke on liian pitkä testattavaksi tässä.".

Käyttäjä voi tyhjentää molemmat kentät yhdellä kertaa, jolloin käyttöliittymässä näytetään ilmoitus "Tyhjennetty.".

JSONPath-syntaksi ja tiedon suodattaminen

JSONPath-lausekkeet mahdollistavat monipuolisen tavan navigoida monimutkaisissa ja sisäkkäisissä JSON-objekteissa. Työkalu tukee yleisiä JSONPath-malleja, joiden avulla datasta voidaan rajata hyvinkin tarkkoja osia:

  • Suora navigointi: Elementteihin viitataan piste- tai indeksisyntaksilla, kuten $.store.book[*].title.
  • Rekursiivinen laskeutuminen: Kahden pisteen syntaksilla $..price voidaan etsiä tiettyä avainta kaikista tasoista riippumatta siitä, kuinka syvälle rakenteeseen se on sijoitettu.
  • Suodattimet: Hakua voidaan rajata loogisilla ehdoilla, kuten [?@.price < 10], jolloin tuloksiin valitaan vain ne objektit, joiden määritetty arvo täyttää asetetun ehdon.
  • Taulukon ositukset (slices): Taulukoista voidaan poimia tiettyjä indeksejä tai indeksivälejä.

Tulosten tarkastelu ja virhetilanteet

Kun JSONPath-lauseke arvioidaan onnistuneesti, työkalu näyttää löydetyt osumat ja niiden tarkat polut. Tulosten esittämisessä ja virheiden käsittelyssä noudatetaan seuraavia sääntöjä:

  • Osumien määrä: Työkalu näyttää löydettyjen osumien kokonaismäärän muodossa "Osumat: {count}".
  • Tulosten rajoitus: Suorituskyvyn varmistamiseksi työkalu näyttää enintään 200 tulosta. Jos osumia on enemmän, näytetään ilmoitus "Osumat: 200+" sekä huomautus "Näytetään ensimmäiset {max} osumaa.".
  • Tiedot-näkymä: Jokaisen yksittäisen osuman kohdalla näytetään "Tiedot"-otsikon alla tarkempi polku, joka osoittaa arvon tarkan sijainnin lähdedatassa.
  • Ei osumia: Jos lauseke on syntaksiltaan oikein, mutta se ei vastaa yhtäkään JSON-datan kohtaa, näytetään ilmoitus "Ei osumia.".

Jos syötteissä tai suorituksessa ilmenee virheitä, työkalu ilmoittaa niistä seuraavasti:

  • Jos syötetty JSON-data on virheellistä tai huonosti muotoiltua, näytetään virheilmoitus: "Tämä JSON ei ole kelvollinen.".
  • Jos JSONPath-lausekkeen syntaksi on virheellinen, näytetään virheilmoitus: "Tämä JSONPath-lauseke ei ole kelvollinen.".
  • Jos lauseketta ei voida muusta syystä ajaa JSON-dataa vasten, näytetään virheilmoitus: "JSONPath-lausekkeen arviointi epäonnistui.".
  • Jos kyselyn suorittaminen kestää liian kauan esimerkiksi erittäin laajojen rekursiivisten hakujen tai suuren datamäärän vuoksi, suoritus keskeytetään turva-ajan jälkeen ja näytetään virheilmoitus: "Tämän JSONPath-lausekkeen suorittaminen kesti liian kauan. Tarkenna lauseketta tai käytä pienempää esimerkkidataa.".

JSONPath API-kehityksessä ja testauksessa

Rajapintojen kehityksessä ja testauksessa JSON-muotoisen datan käsittely on jatkuvaa. JSONPath-lausekkeiden avulla voidaan automatisoida testitapauksia, joissa varmistetaan, että API-vastaus sisältää odotetut arvot oikeissa kohdissa. Testaajan avulla voidaan nopeasti varmistaa kyselyiden toimivuus ennen niiden viemistä osaksi testiautomaatiota tai sovelluskoodia. Tämä vähentää virheellisten kyselyiden aiheuttamia virhetilanteita tuotantoympäristössä.

Usein kysytyt kysymykset

Mitä JSONPath-syntaksia voin käyttää?

Voit käyttää yleisiä JSONPath-malleja, kuten $.store.book[*].title, rekursiivista laskeutumista muodossa $..price, suodattimia kuten [?@.price < 10] sekä taulukon osituksia (slices).

Miksi jokainen tulos näyttää polun?

Polku näyttää, mistä kohdasta lähde-JSON-dataa arvo löytyi, jotta voit kopioida osuman menettämättä sen sijaintitietoa.

Miksi kysely voi aikakatkaista?

Erittäin laajat rekursiiviset kyselyt tai valtavat aineistot voivat kestää liian kauan. Testaaja keskeyttää ne lyhyen aikarajan jälkeen, jotta voit tarkentaa lauseketta tai käyttää pienempää esimerkkidataa.