Junior
Kas ir JSON shēma?
sobes.tech AI
Atbilde no AI
JSON shēma (JSON Schema) — tas ir leksisks standarts, kas balstīts uz JSON, lai aprakstītu datu struktūru un ierobežojumus JSON formātā. Tas ļauj validēt, aprakstīt un dokumentēt JSON datus.
Galvenie mērķi:
- Validācija: pārbaudīt, vai JSON piemērs atbilst noteiktai struktūrai.
- Dokumentācija: aprakstīt JSON datu formātu.
- Sadarbība: metadatu apmaiņa starp sistēmām.
JSON shēmas galvenās sastāvdaļas:
- Datu tipi:
string,number,integer,boolean,object,array,null. - Ierobežojumu galvenie vārdi:
type: gaidāmais datu tips.properties: objekta īpašību apraksts. Katrai īpašībai ir savs apakšshēma.required: obligāto īpašību saraksts.items: masīva elementu apraksts.minLength/maxLength: virkņu garuma ierobežojumi.minimum/maximum: skaitļu ierobežojumi.pattern: regulārs izteiciens virknei.enum: atļauto vērtību saraksts.allOf/anyOf/oneOf/not: loģiskās kombinācijas.
- Metadatu galvenie vārdi:
title: shēmas īss nosaukums.description: shēmas detalizēts apraksts.default: noklusējuma vērtība.
JSON shēmas piemērs:
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Lietotāja unikālais identifikators"
},
"username": {
"type": "string",
"minLength": 3
},
"isActive": {
"type": "boolean",
"default": true
}
},
"required": [
"id",
"username"
]
}
Derīgi JSON dati pēc šīs shēmas:
{
"id": 123,
"username": "testuser",
"isActive": false
}
Nederīgi JSON dati pēc šīs shēmas:
{
"id": "abc" // Nederīgs tips
// Trūkst obligātais lauks "username"
}
JSON shēmas izmantošana QA automatizācijā:
- API atbilžu validācija: pārbaudīt, vai JSON atbildes atbilst noteiktajam formātam.
- Pieprasījumu validācija: pārbaudīt ienākošos JSON datus pirms to apstrādes.
- Testu datu ģenerēšana: izmantot shēmu, lai izveidotu derīgus (vai nederīgus) testu piemērus.
- Dokumentācija: automātiski atjaunināma API dokumentācija.
Ir bibliotēkas, kas paredzētas darbam ar JSON shēmām dažādās programmēšanas valodās (piemēram, jsonschema Python, json-schema-validator Java).