Middle
Pateikite pavyzdį, kaip pasirinktumėte testavimo atvejus PUT užklausai.
sobes.tech AI
Atsakymas iš AI
Norint pasirinkti testavimo atvejus PUT užklausai, naudotume šiuos požiūrius, sutelkiant dėmesį į įvairius aspektus:
-
Galiojantys duomenys:
- Kurti / keisti įrašą su teisingais, pilnais duomenimis.
- Keisti tik dalį laukų, kiti lieka nepakitę.
- Keisti visus laukus naujomis, galiojančiomis reikšmėmis.
- Naudoti ribines reikšmes skaitiniams laukams (minimalios, maksimalios).
- Naudoti įvairius duomenų formatus, leidžiamus specifikacijoje (pvz., data, laikas).
-
Negaliojantys duomenys:
- Siųsti duomenis su neteisingo tipo lauku (pvz., eilutė vietoj skaičiaus).
- Siųsti duomenis, pažeidžiančius eilutės ilgį ar skaičiaus diapazoną.
- Siųsti duomenis, pažeidžiančius unikalumo reikalavimą (jei taikoma).
- Siųsti duomenis su neteisingu formatu (neteisinga data, el. paštas).
- Trūksta būtinų laukų.
- Siųsti tuščius eilutės ar null reikšmes laukams, kurie neturi būti tušti.
-
Resurso egzistavimas:
- PUT užklausa egzistuojančiam resursui.
- PUT užklausa neegzistuojančiam resursui (laukiama 404 atsakymo).
-
Autorizacija ir autentifikacija:
- PUT užklausa su teisingais naudotojo duomenimis, turinčiu teisę keisti resursą.
- PUT užklausa su neteisingais arba nebūtinais duomenimis (laukiama 401 arba 403 atsakymo).
- PUT užklausa iš naudotojo be reikiamų teisių keisti šį resursą (laukiama 403 atsakymo).
-
Sinchronizacija ir konkurencija:
- Vienu metu atliekami PUT užsakymai vienam ir tam pačiam resursui (pvz., naudojant etag).
-
Klaidų apdorojimas:
- PUT užklausa, kuri turėtų sukelti klaidą serverio pusėje (pvz., vidinė klaida).
Pavyzdinis testų atvejų lentelė:
| ID | Testo aprašymas | Išankstiniai veiksmai | Testo duomenys (užklausos dalis) | Tikėtinas rezultatas | HTTP kodas |
|---|---|---|---|---|---|
| PUT-001 | Esamo resurso keitimas su galiojančiais duomenimis | Resursas su ID=123 egzistuoja | { "name": "Naujas pavadinimas", "value": 100 } |
Resursas sėkmingai atnaujintas, duomenys atitinka užklausą | 200 |
| PUT-002 | Esamo resurso dalinis atnaujinimas | Resursas su ID=123 egzistuoja | { "name": "Tik pavadinimo pakeitimas" } |
Resursas sėkmingai atnaujintas, pakeistas tik pavadinimas | 200 |
| PUT-003 | Bandymas keisti neegzistuojantį resursą | Resursas su ID=999 neegzistuoja | { "name": "Nekonstatuotas atnaujinimas" } |
Resursas nerastas | 404 |
| PUT-004 | Resurso keitimas su neteisingo duomenų tipo duomenimis | Resursas su ID=123 egzistuoja | { "value": "ne skaičius" } |
Duomenų validacijos klaida | 400 |
| PUT-005 | Keitimas be autentifikacijos | Resursas su ID=123 egzistuoja, užklausa be tokeno | { "name": "Neautorizuotas pakeitimas" } |
Neautorizuota | 401 |
Kiekvienas testavimo atvejis turi būti atominis ir tikrinti konkretų PUT užklausos aspektą.