Apidog En İyi Uygulama: Yapay Zeka Destekli API Otomasyon Testi

Oliver Kingsley

Oliver Kingsley

30 December 2025

Apidog En İyi Uygulama: Yapay Zeka Destekli API Otomasyon Testi

Yapay zeka (YZ) API geliştirme ve test süreçlerine giderek daha fazla entegre oldukça, otomatik testlere başlama engeli sürekli azalmaktadır. Bir zamanlar tekrarlayan manuel işlemler ve veri hazırlığı gerektiren görevler artık YZ tarafından halledilebilmektedir. Apidog da API testindeki bu değişimi yansıtmaktadır.

Apidog'da otomatik testler ağırlıklı olarak iki yaklaşıma odaklanır: Uç Nokta Testleri (Endpoint Tests) ve Test Senaryoları (Test Scenarios).

Apidog API testi

Eğer Uç Nokta Testi modülünü görmüyorsanız, Apidog sürümünüz güncel değildir demektir. Basitçe en son sürüme güncelleyin.

Uç Nokta Testleri modülü, API'lerinizin tüm HTTP uç noktalarını göstererek Kalite Güvence (KG) geliştiricilerinin daha odaklı olmasını sağlar. Yalnızca test durumları, test raporları ve belgeleri içerir; uç nokta düzenlemesine izin vermez. Bu tasarım, test uzmanlarının test durumları oluşturmaya ve yürütmeye verimli bir şekilde konsantre olmasını sağlar.

Apidog'da uç nokta testi

Buna karşılık, Test Senaryoları birden fazla uç noktayı veya test durumunu birbirine bağlar. Uç noktalar arasındaki yürütme sırasını ve veri aktarımı ilişkilerini tanımlamanıza olanak tanıyarak eksiksiz bir iş sürecini etkili bir şekilde simüle eder.

Apidog'da test senaryosu

Hem Uç Nokta Testleri hem de Test Senaryolarına YZ entegre edildiğinde, API testleri kademeli olarak daha otomatik, yeniden kullanılabilir ve verimli yürütmeye doğru kayabilir. Ardından, bu iki test yönteminin gerçek dünya sorunlarını çözmeye nasıl yardımcı olduğunu inceleyeceğiz.

Otomasyon ile Uç Nokta Testleri

Uç Nokta Testi, uç noktanın kendisinin kararlı olup olmadığına ve girdi/çıktının beklentileri karşılayıp karşılamadığına odaklanır. Her test durumu bağımsız olarak yürütülür ve farklı verilerle tek bir uç noktanın kapsamlı bir şekilde doğrulanmasına vurgu yapılır.

YZ Tarafından Oluşturulan Test Durumları

`Uç Nokta Testi` modülünde herhangi bir uç noktayı açın ve `YZ ile Oluştur` seçeneğine tıklayın. YZ, uç nokta parametrelerine ve yanıt yapısına göre otomatik olarak bir dizi test durumu oluşturacaktır.

YZ tarafından oluşturulan test durumları

Yalnızca belirli test durumlarına ihtiyacınız varsa, varsayılan türleri seçmenize gerek yoktur. Gereksinimlerinizi doğrudan YZ'ye açıklamanız yeterlidir; o da ilgili test durumunu oluşturacaktır. Örneğin, YZ'den şunları isteyebilirsiniz:

Daha hassas sonuçlar için, aşağıdaki gibi ayrıntılı koşullar ve kurallar sağlayabilirsiniz:

Bu uç nokta için pozitif bir test durumu oluşturun.

Uç nokta, aşağıdaki imzalama kurallarına sahip bir imza parametresi (sign) gerektirir:
1. Boş olmayan tüm istek parametrelerini (sign hariç) toplayın, bunları parametre adına göre ASCII sırasına göre sıralayın, & ile birleştirilmiş key=value formatında birleştirin ve sonuna SECRET_KEY gizli anahtarını ekleyin.
2. Ortaya çıkan dizeye MD5 hash'i uygulayın ve hash'i büyük harfe dönüştürün. Nihai sonuç, sign değeri olarak kullanılır.

Test durumu gereksinimleri:
1. İsteği göndermeden önce, sign'ı oluşturmak için açık yorumlar içeren bir ön-istek (pre-request) betiği kullanın.
2. Oluşturulan sign'ı istek parametrelerine ekleyin ve isteği gönderin.

Bu şekilde, YZ kurallarınıza kesinlikle uyarak, eksiklik veya yanlış anlama olmaksızın test durumları oluşturacaktır.

kurallara göre test durumları oluşturma

Test Verisi Oluşturma

Test durumlarını oluştururken, YZ aynı zamanda farklı türdeki durumlar için ilgili test veri kümelerini hazırlar ve çeşitli gerçek dünya girdi senaryolarını kapsar.

Standart iş senaryosu durumlarında, test verileri genellikle birden çok anlamsal olarak geçerli parametre değerleri kümesinden oluşur. Örneğin, bir giriş uç noktası testinde, tüm e-postalar ve şifreler geçerli olsa da, veri kümesi, normal kullanım senaryolarında uç noktanın uyumluluğunu ve kararlılığını doğrulamak için noktalar, artı işaretleri, sayısal e-postalar veya kurumsal e-postalar gibi çeşitli yaygın e-posta formatlarını içerecektir.

YZ tarafından oluşturulan API test durumları

Anormal veya sınır test durumlarında, test verileri kasıtlı olarak doğrulama kurallarını ihlal eden girdileri içerecek şekilde tasarlanmıştır.

Örneğin, "Geçersiz bir e-posta formatıyla giriş yapın ve 400 hatası bekleyin" gibi bir test durumunda, veri kümesi, `@` sembolü eksik olan, alan adı eksik olan veya boşluk içeren e-postalar gibi farklı türde geçersiz e-posta adreslerini içerecektir. Amaç, API uç noktasının bu geçersiz girdileri doğru bir şekilde tespit edip isteği uygun şekilde reddedip reddedemediğini kontrol etmektir.

YZ tarafından oluşturulan sınır test durumları

Test Verilerine Referans Verme

Test durumlarında, test verilerine referans vermek ve istek parametrelerine, istek gövdelerine ve diğer alanlara değişkenler eklemek için {{variable_name}} sözdizimini kullanabilirsiniz.

Test çalıştığında, Apidog veri kümesinden değerleri otomatik olarak tek tek çeker ve her bir değeri kullanarak istekler gönderir. Bu, aynı uç noktayı farklı verilerle birden çok kez test etmenizi sağlar — test durumunu yeniden yazmak zorunda kalmadan.

değişkenler kullanarak test verilerine referans verme

Toplu Yürütme ve Test Raporları

Test durumları ve ilgili verileri hazır olduğunda, birden fazla test durumunu seçebilir ve birlikte çalıştırabilirsiniz. Her test durumu kendi yapılandırmasına göre bağımsız olarak çalışır ve tüm sonuçlar kolay inceleme için tek bir test raporunda toplanır.

Gerçek dünya uygulamalarında, uç noktalar nadiren izole olarak çalışır. Bir isteğin yanıtı bir sonraki için girdi olarak kullanıldığında, test artık tek bir uç noktayı değil, tüm çağrı zincirini kapsar.

İşte burada Test Senaryoları devreye girer.

Test Senaryoları

Tek bir uç nokta genellikle bir iş görevini tamamlamak için yeterli değildir. Örneğin, bir kullanıcı sipariş vermeden önce giriş yapmalı ve ancak sipariş başarıyla oluşturulduktan sonra sipariş detayları sorgulanabilir. Bir uç noktadan gelen yanıt genellikle bir sonraki için girdi haline gelir.

Bu bağımlılıkları tek bir uç nokta testi ile tam olarak doğrulamak zordur.
Test Senaryoları, bir uç noktanın doğru çalışıp çalışmadığını kontrol etmekten, tüm bir çağrı zincirinin sorunsuz ve beklendiği gibi çalışıp çalışmadığını doğrulamaya odaklanır.

Uç Noktaları Bir İş Akışına Entegre Etme

Apidog'da, yeni bir test senaryosu oluşturduktan sonra, belirli bir sırayla birden çok uç nokta veya mevcut test durumu ekleyebilir, her adım için yürütme sırasını açıkça tanımlayabilirsiniz.

uç noktaları bir iş akışına entegre etme

Test Adımları Arasında Veri Aktarımı

Uç noktalar birbirine bağımlı olduğunda, test senaryoları veriyi bir adımdan diğerine değişken olarak aktarmanızı sağlar. Örneğin, Sipariş Oluştur uç noktasından dönen id, siparişi sorgulama veya güncelleme gibi sonraki adımlarda doğrudan yeniden kullanılabilir.

test adımları arasında veri aktarımı

Bu veri aktarımı ek kod gerektirmez. Bunun yerine, uç noktalar arasındaki yukarı ve aşağı yönlü ilişkileri açıkça tanımlamak için değişken referanslamaya dayanır.

Test Durumları Eksikse Ne Olur?

Test senaryolarını düzenlerken, ilk amaç genellikle ana iş akışının sorunsuz çalışmasını sağlamaktır — örneğin, Giriş → Sipariş Oluştur → Sipariş Sorgula, burada her adım mevcut bir test durumuna karşılık gelir.

Ancak, pratikte sık karşılaşılan bir zorlukla karşılaşabilirsiniz: iş akışındaki bazı adımların hazır test durumları olmayabilir veya mevcut durumlar iş akışı gereksinimlerini tam olarak karşılamayabilir.

Örneğin, giriş adımında, yalnızca başarılı bir girişi doğrulamakla kalmayıp, aynı zamanda dönen token'ı sonraki istekler için bir ortam değişkeni olarak çıkarmanız gerekebilir. Mevcut tek bir uç nokta test durumu, token çıkarımı yapmadan yalnızca temel giriş doğrulaması gerçekleştirebilir.

Dönen alanları değişken olarak nasıl çıkaracağınızdan emin değilseniz veya betik yazmaya aşina değilseniz, senaryo düzenlemesini duraklatabilirsiniz. Ardından, o uç nokta için Uç Nokta Testi sayfasına gidin ve gereksinimi karşılamak için YZ'den yararlanın. Örneğin, şunu belirtebilirsiniz:

"Başarılı girişten sonra token'ı çıkaran ve gerekli doğrulama iddialarını (assertions) içeren, bunu bir ortam değişkeni olarak kaydeden bir test durumu oluşturun."
YZ belirli test durumu oluşturuyor

Test durumlarınız üzerinde daha hassas kontrol istiyorsanız, Gelişmiş Ayarlar'da Adım Adım oluşturma'yı etkinleştirebilirsiniz.

YZ adım adım oluşturmayı etkinleştirme

Etkinleştirildiğinde, Apidog öncelikle adları ve açıklamaları içeren bir test durumu listesi oluşturacaktır. Daha sonra, tam ayrıntılı test durumu verilerini oluşturmadan önce bunları manuel olarak inceleyebilir, değiştirebilir ve onaylayabilirsiniz.

YZ tarafından oluşturulan test durumları

Test durumu oluşturulduktan sonra test senaryosuna geri dönün. Bu durumu doğrudan giriş adımı olarak kullanabilir ve sonraki uç noktalar Dinamik Değerler aracılığıyla token'a referans verebilir, böylece iş akışının sorunsuz bir şekilde devam etmesini sağlayabilirsiniz.

Test Senaryolarınızda test verilerine ihtiyacınız varsa, önce YZ'nin Uç Nokta Testi'nde Test Verileri ile durumlar oluşturmasını sağlayabilirsiniz. Ardından, CSV formatındaki veri kümesini Toplu Düzenleme kullanarak test senaryosuna kopyalayarak veri kurulumunu çok daha hızlı ve kullanışlı hale getirebilirsiniz.

YZ tarafından oluşturulan test verileri

Bu yaklaşım, test senaryosunun her zaman ana iş akışına odaklanmasını sağlarken, YZ bir ihtiyaç anında tamamlama asistanı olarak görev yapar. Bir adım eksik olduğunda, o uç nokta için ilgili test durumunu oluşturmak üzere YZ'yi kullanın ve ardından hemen iş akışına geri bağlayın.

Özet

YZ, API testlerinin neyi doğrulaması gerektiğini değiştirmemiş olsa da, testleri başlatmak ve tamamlamak için gereken çabayı önemli ölçüde azaltmıştır.

Uç Nokta Testleri sırasında YZ, öncelikle yavaş test durumu oluşturma ve eksik kapsam sorunlarını ele alır. Bu, testlerin manuel olarak veri hazırlama ve durum yazma süreçlerinde takılıp kalmak yerine doğrulama aşamasına daha hızlı geçmesini sağlar.

Testler Test Senaryolarına ilerlediğinde, odak noktası tek bir uç noktanın doğrulanmasından, uç noktaların gerçek çağrı dizileri içinde doğru bir şekilde birlikte çalışabildiğini sağlamaya kayar.

Bu iş akışında, tüm test durumlarını önceden hazırlamanıza gerek yoktur. Senaryo kademeli olarak oluşturulurken, mevcut iş akışı için gereken belirli durumları YZ'ye oluşturmak üzere istediğiniz zaman Tek Uç Nokta Testine dönebilir, ardından adımları düzenlemeye devam edebilirsiniz. Bu, gereksiz ön çabayı azaltır ve kredi kullanımından tasarruf sağlar.

Genel olarak, Apidog, Uç Nokta Testi, Test Senaryoları ve YZ yeteneklerini tek bir iş akışında birleştirerek, API testlerinin olağan darboğazlarını – durum yazma, veri hazırlama ve süreçleri zincirleme – yönetilebilir görevlere dönüştürür.

Otomatik testin hala "karmaşık yapılandırma ve dik bir öğrenme eğrisi" anlamına geldiğini düşünüyorsanız, küçük başlayın: Apidog'da tek bir uç nokta seçin, birkaç durum oluşturun ve bir test senaryosu çalıştırın. Sürecin pratikte ne kadar daha sorunsuz ve hızlı olabileceğini hızlıca deneyimleyeceksiniz.

API Tasarım-Öncelikli Yaklaşımı Apidog'da Uygulayın

API'leri oluşturmanın ve kullanmanın daha kolay yolunu keşfedin