Bir API uç noktasını bir kez test etmek basittir. Bir istek gönderir, yanıtı inceler ve her şeyin beklendiği gibi çalıştığını onaylarsınız. Gerçek zorluk, aynı testi düzinelerce, hatta yüzlerce farklı veri kümesine karşı çalıştırmanız gerektiğinde başlar. Parametreleri manuel olarak güncellemek ve istekleri tekrarlı bir şekilde göndermek sadece zaman alıcı olmakla kalmaz, aynı zamanda hatalara açıktır ve ölçeklendirilmesi imkansızdır.
İşte burada veri odaklı API testi devreye girer. İstekleri elle yeniden yazmak veya göndermek yerine, tek bir test durumu tanımlar ve onu birden çok girdi veri kümesiyle otomatik olarak çalıştırırsınız. Sonuç, daha geniş kapsam, daha yüksek doğruluk ve çok daha az manuel çabadır.
Bunu verimli bir şekilde yapmak için doğru araca ihtiyacınız var. Apidog, CSV ve JSON dosyalarını kullanarak veri odaklı testler için doğal destek sunarak öne çıkıyor. Hepsi bir arada bir API geliştirme ve test platformu olarak Apidog, harici veri dosyalarını bir test senaryosuna bağlamanıza ve her yanıtı otomatik olarak doğrulayarak tekrar tekrar yürütmenize olanak tanır.
İster farklı kullanıcılarla oturum açma akışlarını, ister çeşitli sorgularla arama API'lerini veya birden çok parametre kombinasyonuyla kaynak oluşturmayı test ediyor olun, Apidog tekrarlayan işleri ortadan kaldırır ve çok daha kısa sürede güvenilir, kapsamlı API testleri yapmanıza yardımcı olur.
Şimdi, CSV ve JSON ile Apidog kullanarak veri odaklı API testine hakim olmak için eksiksiz, adım adım bir rehbere dalalım.
CSV ve JSON ile Veri Odaklı API Testine Adım Adım Rehber

Somut bir örnek kullanarak kurulumdan yürütmeye kadar tüm süreci adım adım inceleyelim. Bir kullanıcı kayıt API uç noktasını test edeceğiz.
Adım 1: Temel API İsteğinizi Tanımlayın
İlk olarak, test şablonunuz olarak hizmet edecek API isteğini oluşturursunuz.
- Apidog'da, kullanıcı kayıt uç noktanıza yeni bir istek oluşturun (örn.
POST /api/v1/users). - Başlıkları ayarlayın (örn.
Content-Type: application/json). - Body sekmesinde JSON yükünüzü oluşturun. Değerleri doğrudan kodlamak yerine, yer tutucular oluşturmak için Apidog'un dinamik değişken sözdizimi
{{}}kullanacaksınız.
{
"username": "{{username}}",
"email": "{{email}}",
"password": "{{password}}",
"role": "{{role}}"
}
Yer tutuculara dikkat edin: {{username}}, {{email}} vb. Apidog, yürütme sırasında bunları veri dosyanızdaki gerçek değerlerle değiştirecektir.
Adım 2: Test Veri Dosyanızı Oluşturun (CSV veya JSON)
Şimdi, verileri yer tutucularınıza besleyecek harici dosyayı oluşturun.
Seçenek A: Bir CSV Dosyası Kullanma
CSV, tablo verileri için mükemmeldir. Bir user_data.csv dosyası oluşturun:
username,email,password,role,expected_status
john_doe,john@example.com,SecurePass123!,user,201
jane_smith,jane@example.com,AnotherPass456!,admin,201
bad_user,not-an-email,short,user,400
duplicate_user,john@example.com,SomePass789!,user,409- İlk satır, yer tutucularınızla eşleşen değişken adlarını (
username,emailvb.) ve doğrulama için fazladan birexpected_statustanımlar. - Sonraki her satır, o çalıştırma için verileri içeren bir test durumudur.
Seçenek B: Bir JSON Dosyası Kullanma
JSON, iç içe veya daha karmaşık veri yapıları için idealdir. Bir user_data.json dosyası oluşturun:
[
{
"username": "john_doe",
"email": "john@example.com",
"password": "SecurePass123!",
"role": "user",
"expected_status": 201
},
{
"username": "jane_smith",
"email": "jane@example.com",
"password": "AnotherPass456!",
"role": "admin",
"expected_status": 201
},
{
"username": "bad_user",
"email": "not-an-email",
"password": "short",
"role": "user",
"expected_status": 400
}
]
Adım 3: Apidog'da Veri Odaklı Testi Yapılandırın
Apidog'un entegre iş akışı burada parlar.
- Kontrol panelinizdeki "Test" sekmesine gidin (veya bir test paketinde yeni bir test durumu oluşturun).

2. Yeni bir test adımı eklemek için tıklayın ve POST /api/v1/users isteğinizi seçin.

3. Test verisi yükleme: user_data.csv veya user_data.json dosyanızı yüklemek için "Test Data" > "+New" üzerine tıklayın. Apidog dosyayı ayrıştıracak ve size veri satırlarının bir önizlemesini gösterecektir.


4. Değişkenleri Eşle (gerektiğinde): Apidog, sütun adlarını (CSV) veya özellik anahtarlarını (JSON) isteğinizdeki {{variable}} yer tutucularına otomatik olarak eşler. Eşlemenin doğru olduğunu doğrulayın.
Adım 4: Veri Değişkenlerinizi Kullanarak Doğrulamalar Yazın
Gerçek güç, girdi verilerinize dayanarak farklı beklenen sonuçları doğrulamaktan gelir. Test sekmesinde, doğrulamalar (aynı zamanda "onaylar" veya "kontroller" olarak da adlandırılır) yazarsınız.
En önemlisi, doğrulamalarınızda dosyanızdaki aynı veri değişkenlerine referans verebilirsiniz.
Örneğin, bir Yanıt Durum Kodu doğrulaması ekleyin:
- Beklenen Değer:
{{expected_status}}
Bu şu anlama gelir: "İlk test çalıştırması (john_doe) için durum kodunun 201'e eşit olduğunu doğrulayın. Üçüncü çalıştırma (bad_user) için 400'e eşit olduğunu doğrulayın." Doğrulama, her yinelemede dinamik olarak değişir.
Apidog'un Script bölümünde JavaScript kullanarak daha karmaşık doğrulamalar ekleyebilirsiniz:
// Example: Validate response body for successful creation
pm.test("Status code is " + pm.variables.get("expected_status"), function () {
pm.response.to.have.status(pm.variables.get("expected_status"));
});
// Only check for user ID if we expect a successful creation
if (pm.variables.get("expected_status") === 201) {
pm.test("Response has user ID", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.id).to.be.a('number');
pm.expect(jsonData.username).to.eql(pm.variables.get("username"));
});
}
Adım 5: Testi Çalıştırın ve Sonuçları Analiz Edin
Çalıştır düğmesine tıklayın. Apidog, veri dosyanızdaki her satır için tek test adımınızı birden çok kez yürütecektir.
Rapor, Her Şeyin Bir Araya Geldiği Yerdir:
Apidog, aşağıdakileri gösteren net, birleştirilmiş bir rapor sunar:
- Toplam Yineleme: (örn. "4/4 Başarılı")
- Her veri satırı için ayrıntılı döküm: Gönderilen tam isteği (gerçek değiştirilmiş değerlerle birlikte) ve o belirli yineleme için alınan yanıtı görmek üzere genişletebilirsiniz.
- Tüm hatalar, soruna neden olan belirli veri satırına göre işaretlenir.
duplicate_user, durum kodu409olmadığı için mi başarısız oldu? Bunu anında göreceksiniz.
Bu, hata ayıklamayı inanılmaz derecede verimli hale getirir. Hangi test durumunun başarısız olduğunu tahmin etmek zorunda kalmazsınız; {"username": "duplicate_user", ...} gibi belirli veri kümesine sahip yineleme olduğunu bilirsiniz.
Veri Odaklı API Testi için En İyi Uygulamalar
- Ortama Özgü Veri: Veri odaklı testleri Apidog'un Ortamları ile birleştirin. Ortamınızda hazırlık (staging) ortamından üretime (production) değişen bir
base_urldeğişkeniniz olabilirken, CSV dosyanız her ikisi için de geçerli olan test durumlarını içerebilir. - Yeniden Kullanılabilir Test Verisi: CSV/JSON dosyalarınızı Apidog projenizin içinde merkezi bir yerde saklayın. Birden çok test paketi aynı veri dosyasını referans alabilir, bu da tutarlılık sağlar.
- Veri Dosyalarını Programatik Olarak Oluşturun: Karmaşık senaryolar için,
test_data.csvdosyanızı oluşturmak üzere bir komut dosyası (Python, Node.js) kullanın. Bu, rastgele verilerle veya geniş bir değer aralığıyla test yapmak için mükemmeldir (örn. 100 farklıpagevelimitkombinasyonuyla sayfalandırmayı test etmek). - Test Kurulumu/Temizliği: Veri odaklı testlerle birlikte Apidog'un istek öncesi komut dosyalarını ve test sonlandırma özelliklerini kullanın. Örneğin, bir
DELETEtestinin her yinelemesinden önce, silinecek kaynağı oluşturmak için bir istek öncesi komut dosyası kullanabilirsiniz.
Sonuç: API Test İş Akışınızı Dönüştürün
Apidog'da CSV/JSON dosyalarıyla veri odaklı test, sizi manuel, tekrarlayan kontrollerden otomatik, kapsamlı doğrulamaya taşır. İyi testin temel ilkesini somutlaştırır: verimlilikten ödün vermeden titiz olmak.
Test verilerinizi dışarı aktararak, ekibinizdeki herkesin okuması, güncellemesi ve anlaması kolay, canlı bir test senaryoları belgesi oluşturursunuz. Apidog'un bu metodolojiyi sorunsuz bir şekilde entegre etmesi, karmaşık bir kurulum olmadığı anlamına gelir; sadece daha güvenilir API'lere giden basit bir yol.
API'leri birer birer test etmeyi bırakın. Apidog'u bugün ücretsiz indirin, ilk CSV dosyanızı içe aktarın ve API testinin gerçekte ne kadar güçlü ve verimli olabileceğini deneyimleyin.
