Sobes.tech
Middle

Կարող եք տալ օրինակ, թե ինչպես կընտրեիք PUT-հայցի համար թեստային դեպքեր?

sobes.tech AI

Պատասխան AI-ից

Ես ընտրում եմ փորձնական դեպքերը հետևյալ հիմունքներով.

  • Հաջողակ թարմացում:

    • Բոլոր դաշտերի թարմացում վավեր արժեքներով:
    • Մի կամ մի քանի դաշտերի թարմացում՝ մնացածները թողնելով անփոփոխ:
    • Դաշտերի թարմացում սահմանային արժեքներով (եթե կիրառելի է):
  • Անհաջող թարմացում (նեգատիվ փորձեր):

    • Անվավեր տվյալներ:
      • Տվյալների սխալ ձևաչափ (օր. տող փոխարեն թիվ):
      • Վերազանցում է առավելագույն երկարությունը կամ դուրս է սահմանված տիրույթից:
      • Պարտադիր դաշտերը բացակայում են հարցումային մարմնում:
    • Անհայտ ռեսուրս:
      • PUT հարցում՝ ID, որը չկա համակարգում:
    • Տվյալների հակասություն:
      • Փորձ՝ թարմացնել ռեսուրսը, որը փոխվել է այլ օգտվողի կողմից:
    • Համապատասխանության բացակայություն:
      • Փորձ՝ թարմացնել ռեսուրս՝ առանց համապատասխան իրավունքների:
    • Վալիդացիոն սխալներ:
      • Բիզնես տրամաբանության կամ տվյալների բազայի սահմանափակումների խախտում:
    • Սխալ Content-Type:
      • Հարցումը ուղարկելը՝ Content-Type-ը տարբեր է սպասվածից:
    • Դատարկ հարցումային մարմին:
      • Հարցումը ուղարկելը՝ առանց մարմնի:
  • Սահմանային պայմաններ:

    • Ռեսուրսի թարմացում՝ նվազագույն դաշտերով:
    • Ռեսուրսի թարմացում՝ առավելագույն դաշտերով:
    • Ավելացվող, անսպասելի դաշտերի փոխանցման դեպքում վարքագծի ստուգում:

Նմուշային փորձնական դեպքերի կառուցվածքը:

Գործընթաց Նկարագրություն Ապահովված արդյունք
Հաջողակ թարմացում Բոլոր դաշտերի թարմացում՝ ճիշտ արժեքներով 200 OK / 204 No Content (API-ից կախված)
Անհայտ ID Ռեսուրսի թարմացում՝ ID, որը չկա 404 Not Found
Անվավեր տվյալների ձևաչափ Թվային դաշտի թարմացում՝ տողով 400 Bad Request
Պարտադիր դաշտի բացակայություն Պարտադիր դաշտի բացակայություն հարցումային մարմնում 400 Bad Request
Հասանելիության բացակայություն Փորձ՝ ռեսուրսը թարմացնել առանց անհրաժեշտ իրավունքների 403 Forbidden

Ավտոմատացման համար օգտագործում էի RestAssured (Java), Requests (Python) կամ Supertest (Node.js) ֆրեյմվորկները և տվյալների սերնդի գործիքները։