Apidog, backend, frontend ve QA ekiplerinin daha verimli çalışmasına yardımcı olan bir API işbirliği ve geliştirme platformudur. QA mühendisleri için Apidog, birim testi, entegrasyon testi, veri odaklı test, performans testi, regresyon testi, CI/CD ve zamanlanmış izleme dahil olmak üzere bir dizi test özelliği sunar.
Temel bilgilerden başlayarak, QA mühendisleri için Apidog'u kullanan tam iş akışını inceleyelim.
İlk Hazırlık
API testine başlamanın ilk adımı, ayrıntılı API dokümantasyonu elde etmektir. Apidog, mevcut API dokümantasyonunu doğrudan içe aktarmanıza izin vererek bunu kolaylaştırır. Bu, her uç noktayı manuel olarak girme ihtiyacını ortadan kaldırır. Sadece Proje Ayarları
-> Veri İçe Aktar
bölümüne gidin ve içe aktarmak için uygun veri formatını seçin.
Birim Testi
Birim testi, test sürecinin önemli bir parçasıdır. Her API'nin farklı koşullar altında beklendiği gibi çalıştığından emin olur. QA mühendisleri, normal, istisnai ve uç durumlar gibi çeşitli senaryoları kapsayacak ayrıntılı test senaryoları yazarlar. Bu, API'nin olası tüm girdileri işlemesini sağlar.
Örneğin, "Evcil Hayvan Detaylarını Sorgula" uç noktası, evcil hayvanın ayrıntılarını almak için bir evcil hayvan kimliği parametresi gerektirir. QA mühendisleri, Apidog'un "Çalıştır" sayfasında petId=123
girebilir ve isteği gönderebilir. Ardından, doğru evcil hayvan ayrıntılarının dönüp dönmediğini kontrol edebilirler.

Testi otomatikleştirmek için, post-işlemcilere onaylar eklenebilir. Bu onaylar, data
alanı altında doğru evcil hayvan kimliğinin görünüp görünmediğini kontrol eder. JSONPath ifadesi $.data.id
kullanılarak ve onay Exists
olarak ayarlanarak, evcil hayvan kimliği otomatik olarak çıkarılabilir ve doğrulanabilir.

Ayrıca, onayı doğrudan döndürülen yanıttan çıkarabilirsiniz.

Bu adımlar tamamlandıktan sonra, test senaryosu kaydedilebilir. "Satılık Evcil Hayvanlar", "Satılan Evcil Hayvanlar", "Kayıt Bulunamadı" ve "Yanlış Kimlik Formatı" gibi ek normal ve anormal test senaryoları gerektiği gibi oluşturulabilir. Bu kaydedilmiş test senaryoları, temel işlevlerin kararlılığını doğrulamak için gelecekteki regresyon testlerinde hızlı ve kolay bir şekilde çalıştırılabilir.

Entegrasyon Testi
Bireysel API'leri test etmek önemlidir, ancak gerçek uygulamalar genellikle birlikte çalışmak için birden fazla API gerektirir. Entegrasyon testi, bu API'lerin doğru bir şekilde etkileşimde bulunmasını sağlar. Gerçek kullanıcı eylemlerini simüle eder ve API'ler arasındaki veri alışverişini ve iş akışını test eder.
Örneğin, bir evcil hayvan satın alma sürecinde, kullanıcılar evcil hayvan listelerine göz atabilir, sepetlerine evcil hayvan ekleyebilir, sipariş verebilir, ödeme yapabilir ve sipariş ayrıntılarını görüntüleyebilir. QA mühendisleri, Apidog'da, süreçte yer alan her uç nokta için test senaryoları ekleyerek bir test senaryosu oluşturabilir.

Uç noktalar arasında veri aktarımı, test sürecinin tamamlanmasını sağlamak için çok önemlidir. Evcil hayvan satın alma akışını örnek olarak ele alalım. QA mühendisleri, sipariş kimliğini adımlar arasında iki şekilde aktarabilir:
- Yöntem 1: "Sipariş Oluştur" uç noktasını çalıştırdıktan sonra, oluşturulan sipariş kimliğini bir değişken olarak kaydedin ve sonraki ödeme ve sipariş sorgulama uç noktalarında kullanın.
- Yöntem 2: "Sipariş Oluştur" uç noktasından dönen değeri doğrudan ödeme ve sipariş sorgulama uç noktalarında kullanın (bu yöntem daha kolaydır ve önerilir).

Birden fazla evcil hayvanı sepete eklemek gibi toplu işlemler için, bir ForEach
döngüsü eklenebilir. Döngü dizisini evcil hayvan listesine ayarlayın.

Evcil hayvan kimliği otomatik olarak eklenecek ve toplu işlemler kolaylaşacaktır.
Her şeyi ayarladıktan sonra, test senaryosunu çalıştırın. Bu, ayrıntılı bir test raporu oluşturacaktır. QA mühendisleri daha sonra herhangi bir sorunu hızlı bir şekilde bulup düzeltebilirler.

Veri Odaklı Test
Bazı durumlarda, aynı uç noktanın birden fazla veri seti ile test edilmesi gerekir. Apidog'un veri odaklı test özelliği bu konuda yardımcı olur. QA mühendisleri, farklı veri kümeleri içeren bir CSV dosyası içe aktarabilirler. Bu kümeler daha sonra test senaryosunda testleri otomatik olarak çalıştırmak için kullanılabilir.
İşte nasıl çalıştığı: QA mühendisleri yeni bir test senaryosu oluşturur, "Evcil Hayvan Bilgisi Oluştur" uç noktasını ekler ve CSV dosyasını Test Verisi
bölümüne içe aktarır. CSV dosyasındaki her satır (ilk satır değişken adı olmak üzere), API isteğinde kullanılabilecek bir veri setini temsil eder.

CSV dosyasındaki verileri eşlemek için bu değişkenlere uç nokta isteğinin JSON gövdesinde başvurun.

Uygun test verilerini ve ortamı seçin ve ardından testi çalıştırın. Apidog, her veri seti için uç nokta senaryolarını otomatik olarak yürütecek, her tur için yürütme durumu ve raporlar oluşturacaktır.

Apidog, toplu testleri bu şekilde otomatikleştirerek, test sürecinin hem verimliliğini hem de doğruluğunu önemli ölçüde artırır.
Performans Testi
Bir uç noktanın temel işlevselliği doğrulandıktan sonra, bir sonraki adım performans testidir. Bu, sistemin yoğun trafik altında nasıl performans gösterdiğini kontrol eder. Apidog, sistemin yanıtını test etmek için birden fazla sanal kullanıcıyı simüle eden performans testi araçları sağlar.
Örneğin, bir sipariş senaryosunda, QA mühendisleri sanal kullanıcı sayısını (örneğin, 10), test süresini ve yükselme süresini (örneğin, 1 dakika) ayarlayabilir. Test sırasında, Apidog saniyedeki istekler, sunucu yanıt süresi ve hata oranları gibi temel ölçümleri gösteren gerçek zamanlı grafikler oluşturur. Bu, QA mühendislerinin performans darboğazlarını belirlemesine ve buna göre optimize etmesine yardımcı olur.


Regresyon Testi
Sistemler geliştikçe, yeni özellikler mevcut işlevselliği etkileyebilir. Regresyon testi, yeni güncellemelerin temel özellikleri bozmadığından emin olur. Apidog'da, QA mühendisleri bir regresyon testi klasörü oluşturabilir ve temel test senaryoları ekleyebilir. Her sürümden önce, her şeyin beklendiği gibi çalıştığından emin olmak için bu testleri toplu olarak çalıştırabilirler.

CI/CD Entegrasyonu
Modern geliştirme iş akışlarında, hızlı sürüm döngülerini ve yüksek kaliteli kodu korumak için Sürekli Entegrasyon (CI) ve Sürekli Dağıtım (CD) çok önemlidir. Apidog, otomatik testlerin derleme hattının bir parçası olarak çalışmasına izin veren Jenkins gibi CI/CD araçlarıyla sorunsuz bir şekilde entegre olur.
QA mühendisleri, belirli bir test senaryosunda CI/CD
sayfasına gidebilir, uygun ortamı ve test verilerini seçebilir ve test sonuçları için bildirimleri etkinleştirebilir (E-posta, Slack, Webhook ve Jenkins gibi çeşitli bildirim yöntemlerini destekler). Ardından, ilgili CI/CD aracını seçin, oluşturulan komutu kopyalayın ve Jenkins veya başka bir derleme aracında yapılandırın.

Sorunsuz kimlik doğrulama ve Jenkins ile iletişim sağlamak için entegrasyon süreci sırasında Erişim Jetonu
oluşturmak ve yapılandırmak önemlidir. Yapılandırıldıktan sonra, Apidog, bir derleme tetiklendiğinde testleri otomatik olarak çalıştıracak ve test sonuçlarını seçilen bildirim yöntemiyle ekibe gönderecek, işbirliği verimliliğini artıracaktır.


API Testi için Zamanlanmış Görevler
Bazen, sistemin kararlı kalmasını sağlamak için testleri düzenli olarak çalıştırmak gerekir. Apidog'un zamanlanmış görevler özelliği, QA mühendislerinin bu süreci otomatikleştirmesini sağlar. Testleri belirli zamanlarda çalışacak şekilde planlayabilir ve sonuçlar hakkında bildirimler alabilirler.
Bu özelliği kullanmadan önce, QA mühendislerinin Apidog'un Runner'ını sunucuya yüklemesi gerekir. Bu, zamanlanmış görevlerin yerel bilgisayarın açık olmasına bağlı olmadan sunucuda bağımsız olarak çalışmasını sağlar. Kurulumdan sonra, QA mühendisleri yeni bir zamanlanmış görev oluşturabilir, test senaryosunu seçebilir, çalışma modunu ve sunucuyu ayarlayabilir ve bildirimleri etkinleştirebilirler.

Görev çalıştıktan sonra, Apidog sonuçları kaydeder ve ekibe gönderir, bu da herhangi bir sorunu hızlı bir şekilde tespit etmeye ve düzeltmeye yardımcı olur.

Sonuç
Apidog, ilk hazırlıktan sürekli izlemeye kadar, API test yaşam döngüsünü önemli ölçüde kolaylaştıran kapsamlı bir özellik paketi sunar. Birim, entegrasyon, veri odaklı, performans, regresyon ve CI/CD testlerinde ve zamanlanmış görevlerdeki sağlam yetenekleriyle Apidog, verimli, güvenilir ve ölçeklenebilir API testini sağlar. Apidog'u test iş akışlarınıza entegre ederek, ekipler zamandan tasarruf edebilir, hataları azaltabilir ve yüksek kaliteli API'leri daha hızlı sunabilir, bu da gelişmiş sistem kararlılığına ve performansına yol açar.