Eksempelgenerator for JSON Schema
Lag reproduserbare gyldige og ugyldige testdata fra et JSON Schema. Hvert eksempel kontrolleres med en JSON Schema-validerer før det tilbys.
Godtar et skjema på opptil 50 000 tegn, 1 til 100 gyldige eksempler og 0 til 100 ugyldige eksempler, med et resultat på opptil 4 000 000 tegn. Alt kjøres i nettleseren. Nedlastingene er en JSON-rapport og JSON Lines-filer. Lim inn ett skjema som JSON eller YAML. Lokale $ref-referanser følges. Opptil 50 000 tegn. Se gjennom innstillingene før du kjører.
Resultatet ditt
Eksempelgenerator for JSON Schema
- Lim inn et JSON Schema som JSON eller YAML.
- Velg en startverdi og hvor mange gyldige og ugyldige eksempler du ønsker.
- Kjør generatoren og se hvilken regel hvert ugyldig eksempel bryter.
- Last ned rapporten eller JSON Lines-filene.
Dette bør du vite
Godtar et skjema på opptil 50 000 tegn, 1 til 100 gyldige eksempler og 0 til 100 ugyldige eksempler, med et resultat på opptil 4 000 000 tegn. Alt kjøres i nettleseren. Nedlastingene er en JSON-rapport og JSON Lines-filer.
Slik lages eksempler
Generatoren går gjennom skjemaet og velger verdier fra typer, enumerasjoner, områder, lengder, enkle mønstre og vanlige formater med en startverdistyrt tilfeldighetsgenerator, slik at samme startverdi gir de samme eksemplene. Hver kandidat valideres deretter med Ajv. En kandidat som ikke består, erstattes, og etter 25 forsøk vises eksemplet som et som ikke kunne genereres, i stedet for å leveres.
Ugyldige eksempler
Ugyldige eksempler tar utgangspunkt i et gyldig eksempel og bryter én regel om gangen, som feil type, en manglende obligatorisk egenskap, en verdi utenfor en enumerasjon eller et område, eller en ekstra egenskap. Hvert eksempel valideres på nytt, og rapporten angir nøkkelordet som ikke ble oppfylt.
Grenser
Bare lokale referanser inne i skjemaet følges; referanser til andre filer eller nettadresser (URLs) hentes aldri. Komplekse regulære uttrykk, not og enkelte kombinasjoner av oneOf kan overstige søket generatoren støtter. Disse eksemplene rapporteres som ikke generert. Skjemaer som bruker __proto__ som nøkkel for egenskap, mønster eller avhengighet, avvises fordi den medfølgende validereren ikke kan kontrollere denne nøkkelen pålitelig. Bokstavelige instansdata med denne nøkkelen bevares.