Middle
PUT so'rovi uchun test holatlarini qanday tanlashni misol qilib keltira olasizmi?
sobes.tech AI
AIdan javob
Quyidagi asosda test holatlarini tanlar edim:
-
Muvaffaqiyatli yangilash:
- Barcha maydonlarni to'g'ri qiymatlar bilan yangilash.
- Bir yoki bir nechta maydonlarni yangilash, qolganlarini o'zgartirmasdan.
- Chegara qiymatlari bilan maydonlarni yangilash (agar qo'llanilsa).
-
Muvaffaqiyatsiz yangilash (salbiy testlar):
- Noto'g'ri ma'lumotlar:
- Maydonlar uchun noto'g'ri ma'lumot formatlari (masalan, satr o'rniga raqam).
- Maksimal uzunlikni oshiradigan yoki ruxsat etilgan diapazondan tashqaridagi qiymatlar.
- So'rovning tanasi ichida majburiy maydonlar mavjud emas.
- Mavjud bo'lmagan resurs:
- ID bilan PUT so'rovi, u tizimda mavjud emas.
- Ma'lumotlar ziddiyati:
- Boshqa foydalanuvchi tomonidan o'zgartirilgan resursni yangilash urinishlari (agar versiya nazorati yoki bloklash mexanizmi ishlatilsa).
- Huquq etishmovchiligi:
- Tegishli huquqlar bo'lmagan holda resursni yangilash urinishlari.
- Validatsiya xatolari:
- Biznes mantiqi yoki ma'lumotlar bazasi cheklovlarini buzish (masalan, noyob qiymatni takrorlash).
- Noto'g'ri Content-Type:
- Kutilganidan boshqacha Content-Type bilan so'rov yuborish (masalan,
text/plaino'rnigaapplication/json).
- Kutilganidan boshqacha Content-Type bilan so'rov yuborish (masalan,
- Bo'sh so'rov tanasi:
- Tanasi bo'sh so'rov yuborish.
- Noto'g'ri ma'lumotlar:
-
Chegara shartlari:
- Minimal maydonlar to'plami bilan resursni yangilash (agar ruxsat etilgan bo'lsa).
- Maksimal maydonlar to'plami bilan resursni yangilash.
- Qo'shimcha, kutilmagan maydonlarni yuborish bilan xulq-atvorini tekshirish.
Test holatlari tuzilmasining misoli:
| Holat | Tavsifi | Kutilyotgan natija |
|---|---|---|
| Muvaffaqiyatli yangilash | Barcha maydonlarni to'g'ri qiymatlar bilan yangilash. | 200 OK / 204 No Content (APIga bog'liq) |
| Mavjud bo'lmagan ID | Mavjud bo'lmagan ID bilan resursni yangilash urinishlari. | 404 Not Found |
| Noto'g'ri ma'lumot formati | Raqamli maydonni satr bilan yangilash urinishlari. | 400 Bad Request |
| Majburiy maydonning yo'qligi | So'rov tanasida majburiy maydonning mavjud emasligi. | 400 Bad Request |
| Huquq etishmovchiligi | Huquqlarsiz foydalanuvchi tomonidan resursni yangilash urinishlari. | 403 Forbidden |
Avtomatlashtirish uchun RestAssured (Java), Requests (Python) yoki Supertest (Node.js) kabi ramkalarni va test ma'lumotlarini yaratish uchun vositalarni ishlatardim.