Middle
Ներկայացրեք օրինակ, թե ինչպես կընտրեիք PUT հարցման համար թեստային դեպքեր։
sobes.tech AI
Պատասխան AI-ից
PUT հարցի համար թեստային դեպքերի ընտրության համար ես կկիրառեի հետևյալ մոտեցումները, կենտրոնանալով տարբեր аспектների վրա:
-
Անվտանգ տվյալներ:
- Ստեղծում / փոփոխում գրանցում ճիշտ, լրիվ տվյալներով:
- Միայն մասային թարմացում որոշ դաշտերի, մնացածը մնում է անփոփոխ:
- Բոլոր դաշտերի թարմացում նոր, վավեր արժեքներով:
- Օգտագործել սահմանային արժեքներ թվային դաշտերի համար (նվազագույն, առավելագույն):
- Օգտագործել տարբեր տվյալների ձևաչափեր, որոնք թույլատրվում են սպեկֆիկացիայով (օր., ամսաթիվ, ժամանակ):
-
Անվավեր տվյալներ:
- Տվյալների փոխանցում սխալ տիպով դաշտ (օր., տող փոխարեն թիվ):
- Տվյալների փոխանցում, որը խախտում է տողի երկարության կամ թվի սահմանափակումները:
- Տվյալների փոխանցում, որը խախտում է դաշտի յուրահատկությունը (եթե կիրառելի է):
- Տվյալների փոխանցում սխալ ձևաչափով (անվավեր ամսաթիվ, էլ. հասցե):
- Պարտադիր դաշտերի բացակայություն:
- Բաց տողեր կամ null փոխանցում այն դաշտերին, որոնք չպետք է լինեն դատարկ:
-
Ավելիություն ռեսուրսի գոյության մասին:
- PUT հարցում գոյություն ունեցող ռեսուրսի համար:
- PUT հարցում ոչ գոյություն ունեցող ռեսուրսի համար (պահանջվում է 404 պատասխան):
-
Ավտորիզացիա և հաստատում:
- Դյուրին օգտվողի տվյալներով PUT հարցում, որը ունի ռեսուրսը փոխելու իրավունք:
- Սխալ կամ բացակա տվյալներով PUT հարցում (պահանջվում է 401 Unauthorized կամ 403 Forbidden):
- Օգտագործողի իրավունքների բացակայությամբ PUT հարցում (պահանջվում է 403 Forbidden):
-
Սինխրոնիզացիա և մրցակցություն:
- Միաժամանակյա PUT հարցումներ նույն ռեսուրսի վրա (օր., etag օգտագործելով):
-
Համակարգման սխալներ:
- Սխալով PUT հարցում, որը պետք է առաջացնի սխալ սերվերի կողմից (օր., ներքին սխալ):
Նմուշային թեստային սցենարների աղյուսակ:
| ID | Թեստի դեպքի նկարագրություն | Պատրաստական պայմաններ | Թեստային տվյալներ (հարցի մաս) | Ապահովված արդյունք | HTTP Կոդ |
|---|---|---|---|---|---|
| PUT-001 | Գոյություն ունեցող ռեսուրսի թարմացում վավեր տվյալներով | ID=123 ռեսուրսը գոյություն ունի | { "name": "Նոր անուն", "value": 100 } |
Ռեսուրսը հաջողությամբ թարմացվեց, տվյալները համապատասխանում են հարցմանը | 200 |
| PUT-002 | Գոյություն ունեցող ռեսուրսի մասային թարմացում | ID=123 ռեսուրսը գոյություն ունի | { "name": "Միայն անունը փոխվեց" } |
Ռեսուրսը հաջողությամբ թարմացվեց, միայն name դաշտը փոխվեց | 200 |
| PUT-003 | Փորձում են թարմացնել չհաստատված ռեսուրսը | ID=999 ռեսուրսը գոյություն չունի | { "name": "Չհաստատված թարմացում" } |
Ռեսուրսը չի գտնվել | 404 |
| PUT-004 | Թարմացում սխալ տվյալների տիպով | ID=123 ռեսուրսը գոյություն ունի | { "value": "չթվային" } |
Տվյալների վավերացման սխալը | 400 |
| PUT-005 | Թարմացում առանց հաստատման | ID=123 ռեսուրսը գոյություն ունի, հարցումը առանց տոքենի | { "name": "Անհայտ փոփոխություն" } |
Անհատականացված | 401 |
Յուրաքանչյուր թեստային դեպք պետք է լինի ագմատիկ և ստուգի կոնկրետ գործառնական կողմը PUT հարցման։