Sobes.tech
Middle

PUT so'rovi uchun test holatlarini qanday tanlashni misol qilib keltiring.

sobes.tech AI

AIdan javob

PUT so'rovi uchun test holatlarini tanlashda, turli jihatlarga e'tibor qaratib, quyidagi yondashuvlarni qo'llardim:

  • To'g'ri ma'lumotlar:

    • To'g'ri va to'liq ma'lumotlar bilan yozuvni yaratish / o'zgartirish.
    • Faqat ba'zi maydonlarni o'zgartirish, qolganlari o'zgarmasdan qoladi.
    • Barcha maydonlarni yangi, to'g'ri qiymatlar bilan o'zgartirish.
    • Raqamli maydonlar uchun chegaraviy qiymatlarni ishlatish (minimal, maksimal).
    • Tavsifga ruxsat etilgan turli ma'lumot formatlarini ishlatish (masalan, sana, vaqt).
  • Noto'g'ri ma'lumotlar:

    • Maydon turi noto'g'ri bo'lgan ma'lumotlarni yuborish (masalan, satr o'rniga raqam).
    • Satr uzunligi yoki raqam diapazoni cheklovlarini buzadigan ma'lumotlarni yuborish.
    • Maydonning yagona bo'lishini buzadigan ma'lumotlarni yuborish (agar mavjud bo'lsa).
    • Noto'g'ri formatdagi ma'lumotlarni yuborish (noto'g'ri sana, email).
    • Majburiy maydonlarning mavjud emasligi.
    • Bo'sh satrlar yoki null qiymatlarni yuborish, agar maydonlar bo'sh bo'lishi mumkin bo'lmasa.
  • Resurs mavjudligi:

    • Mavjud resursga PUT so'rovi.
    • Mavjud bo'lmagan resursga PUT so'rovi (kutilgan javob 404).
  • Avtorizatsiya va autentifikatsiya:

    • Resursni o'zgartirish huquqiga ega bo'lgan foydalanuvchi bilan to'g'ri ma'lumotlar bilan PUT so'rovi.
    • Noto'g'ri yoki yo'q ma'lumotlar bilan PUT so'rovi (kutilgan 401 No' authorization yoki 403 Forbidden).
    • Bu resursni o'zgartirish huquqi bo'lmagan foydalanuvchidan PUT so'rovi (kutilgan 403 Forbidden).
  • Sinhronlashtirish va raqobat:

    • Bir vaqtning o'zida bir xil resursga PUT so'rovlari (masalan, etag bilan).
  • Xatoliklarni boshqarish:

    • Server tomonida xatolik keltirib chiqarishi kerak bo'lgan PUT so'rovi (masalan, ichki nosozlik sababli).

Test holatlari jadvali misoli:

ID Test holatining tavsifi Old shartlar Test ma'lumotlari (so'rovning qismi) Kutilyotgan natija HTTP kodi
PUT-001 Mavjud resursni to'g'ri ma'lumotlar bilan o'zgartirish ID=123 bo'lgan resurs mavjud { "name": "Yangi nom", "value": 100 } Resurs muvaffaqiyatli yangilandi, ma'lumotlar so'rovga mos keladi 200
PUT-002 Mavjud resursni qisman yangilash bilan o'zgartirish ID=123 bo'lgan resurs mavjud { "name": "Faqat nom o'zgartirildi" } Resurs muvaffaqiyatli yangilandi, faqat name maydoni o'zgartirildi 200
PUT-003 Mavjud bo'lmagan resursni o'zgartirishga urinish ID=999 bo'lgan resurs mavjud emas { "name": "Mavjud bo'lmagan yangilash" } Resurs topilmadi 404
PUT-004 Noto'g'ri ma'lumot turi bilan resursni o'zgartirish ID=123 bo'lgan resurs mavjud { "value": "raqam emas" } Ma'lumotlarni validatsiya qilish xatosi 400
PUT-005 Autentifikatsiya qilmasdan resursni o'zgartirish ID=123 bo'lgan resurs mavjud, so'rov tokensiz { "name": "Ruxsatsiz o'zgartirish" } Ruxsatsiz 401

Har bir test holati atomik bo'lishi va PUT so'rovining aniq bir jihatini tekshirish uchun bo'lishi kerak.