Junior
Čo je to JSON schéma?
sobes.tech AI
Odpoveď od AI
JSON schéma (JSON Schema) je lexikálny štandard založený na JSON na opis štruktúry a obmedzení dát v formáte JSON. Umožňuje validáciu, opis a dokumentáciu JSON dát.
Hlavné ciele:
- Validácia: Kontrola, či JSON príklad zodpovedá určitej štruktúre.
- Dokumentácia: Opis formátu JSON dát.
- Interakcia: Výmena metadát medzi systémami.
Kľúčové komponenty JSON schémy:
- Dátové typy:
string,number,integer,boolean,object,array,null. - Kľúčové slová pre obmedzenia:
type: Očakávaný dátový typ.properties: Opis vlastností objektu. Každá vlastnosť má svoju podštruktúru.required: Zoznam povinných vlastností pre objekt.items: Opis prvkov poľa.minLength/maxLength: Obmedzenia dĺžky pre reťazce.minimum/maximum: Obmedzenia pre čísla.pattern: Regulárny výraz pre reťazec.enum: Zoznam povolených hodnôt.allOf/anyOf/oneOf/not: Logické kombinácie schém.
- Kľúčové slová pre metadáta:
title: Krátky názov schémy.description: Podrobný opis schémy.default: Predvolená hodnota.
Príklad JSON schémy:
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Unikátne identifikátor používateľa"
},
"username": {
"type": "string",
"minLength": 3
},
"isActive": {
"type": "boolean",
"default": true
}
},
"required": [
"id",
"username"
]
}
Príklad JSON dát, ktoré sú platné podľa tejto schémy:
{
"id": 123,
"username": "testuser",
"isActive": false
}
Príklad JSON dát, ktoré nie sú platné podľa tejto schémy:
{
"id": "abc" // Neplatný typ
// Chýba povinné pole "username"
}
Použitie JSON schémy v QA automatizácii:
- Validácia odpovedí API: Kontrola, či JSON odpovede zodpovedajú stanovenému formátu.
- Validácia požiadaviek: Kontrola vstupných JSON dát pred ich spracovaním.
- Generovanie testovacích dát: Použitie schémy na vytváranie platných (alebo neplatných) testovacích príkladov.
- Dokumentácia: Automaticky udržiavaná dokumentácia API.
Existujú knižnice na prácu s JSON schémami v rôznych programovacích jazykoch (napr. jsonschema pre Python, json-schema-validator pre Java).