Middle
Bir PUT isteği için test vakalarını nasıl seçeceğinize dair bir örnek veriniz.
sobes.tech yapay zeka
AI'dan gelen yanıt
Bir PUT isteği için test vakalarını seçerken aşağıdaki ilkeleri dikkate alırdım:
-
Pozitif senaryolar:
- Geçerli verilerle mevcut bir kaynağın başarılı tam güncellemesi.
- API bunu destekliyorsa, mevcut bir kaynağın başarılı kısmi güncellemesi.
- Alanlar için sınır değerleri kullanarak kaynağın güncellenmesi.
-
Negatif senaryolar:
- Belirtilen ID ile kaynağın bulunmaması.
- Geçersiz kaynak ID formatı.
- İstek alanlarında geçersiz veri tipi.
- İstek gövdesinde zorunlu alanların eksikliği.
- Yanlış formatta istek gövdesi (örneğin, JSON değil).
- Güncellenmemesi gereken alanların güncellenmeye çalışılması (örneğin, ID, oluşturulma tarihi).
- Kaynağı güncellemek için yetersiz erişim hakları.
- Kaynağın rekabetçi güncellenmesi (çatışma yönetimini kontrol etmek için).
-
Sınır koşulları:
- Sayısal alanlar için maksimum izin verilen değerler.
- Metin alanları için boş dizgiler (izin veriliyorsa).
- Metin alanlarında özel karakterler.
- Metin alanları için uzun dizgiler.
-
Yan etkilerin kontrolü:
- Güncellemeden sonra ilişkili diğer kaynakların değiştirilmesi.
- Güncellenen verilerin sistemin diğer bölümlerinde doğru görüntülenmesi (örneğin, kullanıcı arayüzünde).
Örnek test vakası yapısı (kullanıcı kaynağı için id, name, email alanlarıyla):
| TestCase ID | Açıklama | İstek URL | İstek Gövdesi | Beklenen Durum Kodu | Beklenen Yanıt Gövdesi / Davranış |
|---|---|---|---|---|---|
| PUT_USR_001 | Başarılı tam güncelleme | /users/123 |
{"name": "Yeni İsim", "email": "yeni@ornek.com"} |
200 | Güncellenmiş kullanıcı verileri döndürülür |
| PUT_USR_002 | Kullanıcı bulunamadı | /users/999 |
{"name": "Yeni İsim"} |
404 | Kullanıcı bulunamadı hatası mesajı |
| PUT_USR_003 | Geçersiz e-posta formatı | /users/123 |
{"email": "geçersiz-e-posta"} |
400 | Geçersiz e-posta formatı hatası mesajı |
| PUT_USR_004 | Gerekli alan eksik (uygunsa) | /users/123 |
{} |
400 | Eksik alan hatası mesajı |
| PUT_USR_005 | Bir alan için maksimum sınır değeri | /users/123 |
{"name": "A" * 255} |
200 | Uzun isimle güncellenmiş kullanıcı verileri |
| PUT_USR_006 | Güncellenmeye izin verilmeyen alanı güncelleme girişimi (id) | /users/123 |
{"id": 456, "name": "Yeni İsim"} |
400/403 | Yasaklanan veya yanlış istek mesajı |
Elbette, belirli test vakaları seti API'nin spesifikasyonuna, iş mantığına ve sistem mimarisine bağlı olacaktır.