Sobes.tech
Middle

Dă un exemplu de cum ai alege cazurile de test pentru o solicitare PUT.

sobes.tech AI

Răspuns de la AI

Pentru selectarea cazurilor de test pentru cererea PUT, aș aplica următoarele abordări, concentrându-mă pe diferite aspecte:

  • Date valide:

    • Crearea / modificarea unui înregistrări cu date corecte și complete.
    • Modificarea doar a unor câmpuri, celelalte rămânând neschimbate.
    • Modificarea tuturor câmpurilor la valori noi, valide.
    • Utilizarea valorilor limită pentru câmpurile numerice (minim, maxim).
    • Utilizarea diferitelor formate de date permise de specificație (de exemplu, dată, oră).
  • Date invalide:

    • Trimiterea de date cu un tip de câmp incorect (de exemplu, șir în loc de număr).
    • Trimiterea de date care încalcă restricțiile de lungime a șirului sau intervalul numerelor.
    • Trimiterea de date care încalcă unicitatea câmpului (dacă este cazul).
    • Trimiterea de date cu format incorect (dată invalidă, email).
    • Lipsa câmpurilor obligatorii.
    • Trimiterea de șiruri goale sau null pentru câmpurile care nu trebuie să fie goale.
  • Existența resursei:

    • Cerere PUT către o resursă existentă.
    • Cerere PUT către o resursă inexistentă (se așteaptă răspuns 404).
  • Autorizare și autentificare:

    • Cerere PUT cu date corecte de autentificare ale unui utilizator autorizat să modifice resursa.
    • Cerere PUT cu date de autentificare incorecte sau absente (se așteaptă 401 Neautorizat sau 403 Interzis).
    • Cerere PUT de la un utilizator fără drepturile necesare pentru a modifica această resursă (se așteaptă 403 Interzis).
  • Sincronizare și concurență:

    • Cereri PUT simultane către aceeași resursă (de exemplu, folosind etag).
  • Gestionarea erorilor:

    • Cerere PUT care trebuie să provoace o eroare pe partea serverului (de exemplu, din cauza unei defecțiuni interne).

Exemplu de tabel cu cazuri de test:

ID Descrierea cazului de test Condiții prealabile Date de test (parte a cererii) Rezultat așteptat Cod HTTP
PUT-001 Modificarea unui resurs existent cu date valide Resursa cu ID=123 există { "name": "Nume Nou", "value": 100 } Resursa actualizată cu succes, datele corespund cererii 200
PUT-002 Modificarea unui resurs existent cu actualizare parțială Resursa cu ID=123 există { "name": "Doar numele schimbat" } Resursa actualizată cu succes, doar câmpul name schimbat 200
PUT-003 Încercarea de a modifica o resursă inexistentă Resursa cu ID=999 nu există { "name": "Actualizare inexistentă" } Resursă negăsită 404
PUT-004 Modificarea unei resurse cu tip de date invalid Resursa cu ID=123 există { "value": "nu_un_număr" } Eroare de validare a datelor 400
PUT-005 Modificarea unei resurse fără autentificare Resursa cu ID=123 există, cerere fără token { "name": "Schimbare neautorizată" } Neautorizat 401

Fiecare caz de test trebuie să fie atomic și să verifice un aspect specific al funcționalității cererii PUT.