Test Mühendislerinin Bilmesi Gereken API Test Stratejileri

347
0
API-Test

API testleri, modern yazılım geliştirme süreçlerinde vazgeçilmez bir rol oynar. Doğru stratejiler ve araçlarla yürütülen API testleri, sistemlerin güvenilirliğini, performansını ve güvenliğini artırır. HTTP metodları ve hata kodlarını anlamak, test süreçlerini daha etkili hale getirirken, Postman gibi araçlarla testleri çalıştırmak ve doğrulamak büyük kolaylık sağlar. Otomasyon ve entegrasyon testleriyle API kalitesini sürekli izlemek, uzun vadede sürdürülebilir bir test süreci oluşturur. API testlerini bir yazılım geliştirme döngüsünün temel taşı olarak görmek, başarılı ve hatasız uygulamalar sunmanın anahtarıdır.
Bu makalede, API test stratejilerini altı temel başlık altında ele alacağız.

1. API Testinin Önemi

Günümüz yazılımlarının büyük çoğunluğu, farklı servisler ve sistemlerle etkileşim halinde çalışır. Mobil uygulamalardan web servislerine kadar birçok sistem, API’ler üzerinden veri alışverişinde bulunur. Bu noktada API testleri, sistemin beklenen şekilde çalıştığını doğrulamak için büyük önem taşır.

Neden API Testi Yapmalıyız?

  • API’ler, arayüz bağımsız test edilebilir.
  • Hataları erken tespit etme imkanı sağlar.
  • Performans ve güvenlik açısından kritik noktaları ortaya çıkarır.
  • Mikro servis mimarilerinde bileşenler arası entegrasyonun doğruluğunu sağlar.

Örneğin, bir bankacılık uygulaması geliştirdiğinizi düşünelim. Kullanıcının hesap bakiyesini gösteren bir API’nin yanlış sonuç döndürmesi, finansal hatalara yol açabilir. İşte tam da bu yüzden API testleri gereklidir.

2. Temel API Test Türleri

API testleri farklı senaryolarla gerçekleştirilebilir. İşte en yaygın API test türleri:

  • Fonksiyonel Testler: API’nin işlevselliğini test eder. Doğru girişler ile doğru çıktılar dönmesini bekleriz.
  • Negatif Testler: Yanlış veya beklenmeyen girişler ile API’nin nasıl tepki verdiğini kontrol ederiz.
  • Yük Testleri: API’nin yüksek trafik altında nasıl çalıştığını test ederiz.
  • Güvenlik Testleri: Yetkisiz erişim, veri sızıntısı gibi riskleri tespit etmek için yapılan testlerdir.

Örneğin, bir e-ticaret sitesinde ödeme API’sini test ederken yalnızca başarılı ödeme senaryolarını değil, hatalı kart numarası veya yetersiz bakiye gibi negatif senaryoları da kapsamak gerekir.

3. Test Senaryoları ve Kullanım Örnekleri

Başarılı bir API testi stratejisi, iyi tanımlanmış test senaryolarına dayanır. İşte birkaç örnek:

  • Geçerli girişlerle API’yi çağırma (Örn: Doğru kullanıcı adı ve şifre ile giriş yapma)
  • Geçersiz girişlerle hata mesajlarını doğrulama (Örn: Yanlış formatta e-posta ile giriş yapma)
  • Zorunlu alanları eksik bırakarak API’nin nasıl tepki verdiğini test etme
  • Yetkisiz bir kullanıcıyla erişim sağlamaya çalışma

Örneğin, bir oturum açma API’si test edilirken şu senaryolar oluşturulabilir:
✅ Geçerli kullanıcı bilgileri ile giriş yapıldığında 200 yanıt dönmeli.
❌ Yanlış şifre girildiğinde 401 hatası döndürmeli.
❌ Boş e-posta alanı ile gönderildiğinde 400 hatası döndürmeli.

Bu tür test senaryoları, API’nin hatasız ve güvenilir çalışmasını sağlamak için kritik öneme sahiptir.

4. HTTP Metodları ve Hata Kodları

API testlerinde kullanılan temel HTTP metodlarını ve hata kodlarını bilmek, test süreçlerini daha etkili hale getirir. İşte en yaygın kullanılan HTTP metodları:

  • GET: Veriyi almak için kullanılır.
  • POST: Yeni bir kaynak oluşturmak için kullanılır.
  • PUT: Mevcut bir kaynağı güncellemek için kullanılır.
  • DELETE: Belirtilen kaynağı silmek için kullanılır.

Bunların yanında, API’lerden dönebilecek yaygın hata kodları şunlardır:

  • 200 OK: İstek başarılı.
  • 201 Created: Yeni bir kaynak başarıyla oluşturuldu.
  • 400 Bad Request: Yanlış veya eksik parametrelerle yapılan istek.
  • 401 Unauthorized: Yetkisiz erişim.
  • 403 Forbidden: Yetkiniz olmadığı için erişim reddedildi.
  • 404 Not Found: İstenen kaynak bulunamadı.
  • 500 Internal Server Error: Sunucu tarafında bir hata oluştu.

API testlerinde, bu hata kodlarının beklendiği gibi döndüğünü doğrulamak gerekir.

5. API Testlerini Postman Üzerinde Çalıştırma

Postman, API testleri için en popüler araçlardan biridir. Peki, yukarıda belirlediğimiz test senaryolarını nasıl çalıştırabiliriz?

Adım 1: API’yi Postman’e Tanımlama

  • Postman’i açın ve New Request oluşturun.
  • API’nin HTTP metodunu seçin (GET, POST, PUT, DELETE).
  • API’nin endpoint adresini girin.

Adım 2: Test Senaryolarını Çalıştırma

  • Başarılı giriş senaryosu için doğru kullanıcı adı ve şifre ile bir POST request gönderin. Dönen yanıt kodu 200 olmalı.
  • Hatalı giriş senaryosu için yanlış şifre girerek tekrar deneyin. Yanıt kodu 401 ve hata mesajı içermeli.
  • Eksik alan senaryosu için şifreyi boş bırakarak test edin. Yanıt kodu 400 olmalı.

Adım 3: Yanıtları Doğrulama
Postman’in Tests sekmesinde aşağıdaki kodu yazarak yanıtın doğru olup olmadığını kontrol edebilirsiniz:

pm.test(“Status code is 200”, function ()
{

pm.response.to.have.status(200);

});

Bu sayede Postman üzerinde otomatik testler çalıştırabilir ve API’nin sağlamlığını kontrol edebilirsiniz.

6. API Testlerinde En İyi Uygulamalar (Best Practices)

API testlerini daha verimli hale getirmek için şu en iyi uygulamaları takip edebilirsiniz:

  • Her olası senaryoyu test edin. Sadece başarılı yanıtları değil, hatalı yanıtları da doğrulamalısınız.
  • Test verilerini temiz tutun. Gerçek sistemleri etkilemeden sahte test verileri ile çalışın.
  • Otomatik testler oluşturun. Manuel testleri tekrarlamak yerine otomasyon araçlarını kullanarak zaman kazanın.
  • Performans testleri yapın. API’nin yüksek yük altında nasıl çalıştığını görmek için yük testleri (Load Testing) gerçekleştirin.
  • API dökümantasyonlarını sürekli güncel tutun. Swagger veya Postman Collection gibi araçlarla API dokümanlarını düzenli olarak güncelleyin.

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz