Middle
Tudnál példát mondani arra, hogyan választanád ki a teszteseteket egy PUT kéréshez?
sobes.tech MI
Válasz az MI-től
A következők alapján választanám ki a teszteseteket:
-
Sikeres frissítés:
- Minden mező frissítése érvényes értékekkel.
- Egy vagy több mező frissítése, a többi változatlanul hagyásával.
- Mezők frissítése határértékekkel (ha alkalmazható).
-
Sikertelen frissítés (negatív tesztek):
- Érvénytelen adatok:
- Érvénytelen adatformátum a mezőknél (pl. szöveg helyett szám).
- Olyan értékek, amelyek meghaladják a maximális hosszúságot vagy kívül esnek a megengedett tartományon.
- Kötelező mezők hiánya a kérés törzsében.
- Nem létező erőforrás:
- PUT kérés olyan ID-vel, amely nem létezik a rendszerben.
- Adatkonfliktus:
- Olyan erőforrás frissítése, amelyet más felhasználó módosított (ha verziókezelés vagy zárolás van alkalmazva).
- Jogok hiánya:
- Olyan erőforrás frissítése, amelyhez nincs megfelelő jogosultság.
- Érvényesítési hibák:
- Üzleti logika vagy adatbázis korlátozások megsértése (pl. egyedi érték duplikálása).
- Hibás Content-Type:
- Kérés küldése eltérő Content-Type-tal, mint a várt (pl.
text/plainhelyettapplication/json).
- Kérés küldése eltérő Content-Type-tal, mint a várt (pl.
- Üres kérés törzs:
- Kérés küldése test nélkül.
- Érvénytelen adatok:
-
Határértékek:
- Erőforrás frissítése minimális mezőkkel (ha megengedett).
- Erőforrás frissítése maximális mezőkkel.
- Viselkedés ellenőrzése, amikor a kérés testében további, nem várt mezőket küldünk.
Tesztesetek szerkezeti példája:
| Eset | Leírás | Várt eredmény |
|---|---|---|
| Sikeres frissítés | Minden mező helyes értékekkel frissítése. | 200 OK / 204 No Content (az API-tól függően) |
| Nem létező ID | Olyan erőforrás frissítése, amelynek ID-je nem létezik. | 404 Not Found |
| Érvénytelen adatformátum | Szám típusú mező frissítése sztringgel. | 400 Bad Request |
| Kötelező mező hiánya | Kötelező mező hiánya a kérés testében. | 400 Bad Request |
| Jogok hiánya | Olyan erőforrás frissítése felhasználó által, akinek nincs megfelelő jogosultsága. | 403 Forbidden |
Automatizáláshoz olyan keretrendszereket használnék, mint a RestAssured (Java), Requests (Python) vagy Supertest (Node.js), valamint eszközöket a tesztadatok generálására.