Junior
Co je to JSON schéma?
sobes.tech AI
Odpověď od AI
Schéma JSON (JSON Schema) je lexikální standard založený na JSONu pro popis struktury a omezení dat ve formátu JSON. Umožňuje validaci, popis a dokumentaci JSON dat.
Hlavní cíle:
- Validace: Kontrola, zda JSON instance odpovídá určité struktuře.
- Dokumentace: Popis formátu JSON dat.
- Interakce: Výměna metadat mezi systémy.
Klíčové komponenty JSON schématu:
- Datové typy:
string,number,integer,boolean,object,array,null. - Klíčová slova pro omezení:
type: Očekávaný typ dat.properties: Popis vlastností objektu. Každá vlastnost má své vlastní podschéma.required: Seznam povinných vlastností.items: Popis prvků pole.minLength/maxLength: Omezení délky řetězců.minimum/maximum: Omezení pro čísla.pattern: Regulární výraz pro řetězce.enum: Seznam povolených hodnot.allOf/anyOf/oneOf/not: Logické kombinace schémat.
- Klíčová slova pro metadata:
title: Krátký název schématu.description: Podrobný popis schématu.default: Výchozí hodnota.
Příklad JSON schématu:
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Unikátní identifikátor uživatele"
},
"username": {
"type": "string",
"minLength": 3
},
"isActive": {
"type": "boolean",
"default": true
}
},
"required": [
"id",
"username"
]
}
Příklad platných JSON dat podle tohoto schématu:
{
"id": 123,
"username": "testuser",
"isActive": false
}
Příklad neplatných JSON dat podle tohoto schématu:
{
"id": "abc" // Špatný typ
// Chybí povinné pole "username"
}
Použití JSON schématu v QA automatizaci:
- Validace odpovědí API: Kontrola, zda JSON odpovědi odpovídají formátu.
- Validace požadavků: Kontrola příchozích JSON dat před jejich zpracováním.
- Generování testovacích dat: Použití schématu k tvorbě platných (nebo neplatných) příkladů.
- Dokumentace: Automaticky udržovaná dokumentace API.
Existují knihovny pro práci se schématy JSON v různých programovacích jazycích (například jsonschema pro Python, json-schema-validator pro Javu).