Middle
Uveďte príklad, ako by ste vybrali testovacie prípady pre požiadavku PUT.
sobes.tech AI
Odpoveď od AI
Pre výber testovacích prípadov pre požiadavku PUT by som použil nasledujúce prístupy, zameriavajúc sa na rôzne aspekty:
-
Platné údaje:
- Vytvorenie / aktualizácia záznamu s korektnými, úplnými údajmi.
- Čiastočná aktualizácia len niektorých polí, ostatné zostávajú nezmenené.
- Aktualizácia všetkých polí s novými, platnými hodnotami.
- Použitie hraničných hodnôt pre číselné polia (minimálne, maximálne).
- Použitie rôznych formátov dát povolených špecifikáciou (napríklad dátum, čas).
-
Neplatné údaje:
- Prenos údajov s nesprávnym typom poľa (napríklad reťazec namiesto čísla).
- Prenos údajov porušujúcich obmedzenia dĺžky reťazca alebo rozsahu čísla.
- Prenos údajov porušujúcich jedinečnosť poľa (ak je to relevantné).
- Prenos údajov s nesprávnym formátom (neplatný dátum, email).
- Chýbajúce povinné polia.
- Prenos prázdnych reťazcov alebo null pre polia, ktoré nemôžu byť prázdne.
-
Existencia zdroja:
- PUT požiadavka na existujúci zdroj.
- PUT požiadavka na neexistujúci zdroj (očakávame odpoveď 404).
-
Autorizácia a autentifikácia:
- PUT požiadavka s korektnými prihlasovacími údajmi používateľa, ktorý má právo meniť zdroj.
- PUT požiadavka s nesprávnymi alebo chýbajúcimi prihlasovacími údajmi (očakávame 401 Unauthorized alebo 403 Forbidden).
- PUT požiadavka od používateľa bez potrebných práv (očakávame 403 Forbidden).
-
Synchronizácia a konkurentnosť:
- Súčasné PUT požiadavky na ten istý zdroj (napríklad s použitím etag).
-
Spracovanie chýb:
- PUT požiadavka, ktorá má spôsobiť chybu na strane servera (napríklad kvôli internému zlyhaniu).
Príklad tabuľky s testovacími prípadmi:
| ID | Popis testovacieho prípadu | Predpoklady | Testovacie údaje (časť požiadavky) | Očakávaný výsledok | HTTP Kód |
|---|---|---|---|---|---|
| PUT-001 | Aktualizácia existujúceho zdroja s platnými údajmi | Zdroj s ID=123 existuje | { "name": "Nové meno", "value": 100 } |
Zdroj úspešne aktualizovaný, údaje zodpovedajú požiadavke | 200 |
| PUT-002 | Čiastočná aktualizácia existujúceho zdroja | Zdroj s ID=123 existuje | { "name": "Len názov sa zmenil" } |
Zdroj úspešne aktualizovaný, iba pole name je zmenené | 200 |
| PUT-003 | Pokus o aktualizáciu neexistujúceho zdroja | Zdroj s ID=999 neexistuje | { "name": "Neexistujúca aktualizácia" } |
Zdroj nenájdený | 404 |
| PUT-004 | Aktualizácia zdroja s neplatným typom dát | Zdroj s ID=123 existuje | { "value": "nie číslo" } |
Chyba validácie dát | 400 |
| PUT-005 | Aktualizácia zdroja bez autentifikácie | Zdroj s ID=123 existuje, požiadavka bez tokenu | { "name": "Neautorizovaná zmena" } |
Neautorizované | 401 |
Každý testovací prípad by mal byť atomický a overovať konkrétny aspekt funkčnosti PUT požiadavky.