Mert Akbağ

Cypress ile API Testleri Nasıl Yapılır?

23 Ağustos 2025
Modern yazılım geliştirme süreçlerinde API’ler, uygulamaların birbirleriyle iletişim kurmasını sağlayan en önemli yapılardır. Bu nedenle API testleri, uygulamanın güvenilirliğini ve performansını garanti altına almak için kritik bir rol oynar. Cypress yalnızca kullanıcı arayüzü (UI) testlerinde değil, aynı zamanda API testlerinde de güçlü bir araç olarak kullanılabilir.
Cypress ile API Testleri Nasıl Yapılır?
Modern yazılım geliştirme süreçlerinde API’ler, uygulamaların birbirleriyle iletişim kurmasını sağlayan en önemli yapılardır. Bu nedenle API testleri, uygulamanın güvenilirliğini ve performansını garanti altına almak için kritik bir rol oynar. Cypress yalnızca kullanıcı arayüzü (UI) testlerinde değil, aynı zamanda API testlerinde de güçlü bir araç olarak kullanılabilir.

Cypress ile API Testlerine Giriş

Cypress, JavaScript tabanlı olması ve kolay öğrenilebilir yapısıyla geliştiriciler ve test uzmanları için oldukça kullanışlıdır. Özellikle cy.request() komutu sayesinde API istekleri gönderip yanıtları doğrulamak son derece basittir.

Cypress ile API Testlerinin Avantajları

Kolay kullanım: Karmaşık yapılandırmalara gerek kalmadan API çağrıları yapılabilir.

Hız: UI yüklenmeden testler çalıştığı için hızlı sonuçlar elde edilir.

Doğrudan doğrulama: Yanıt kodları, body içerikleri ve header bilgileri kolayca kontrol edilebilir.

Basit Bir API Testi Örneği

Aşağıda Cypress kullanarak yapılan basit bir GET isteği örneğini görebilirsiniz:



describe('API Testi - GET Kullanıcılar', () => {
it('Kullanıcı listesini döndürmeli', () => {
cy.request('GET', 'https://jsonplaceholder.typicode.com/users')
.then((response) => {
expect(response.status).to.eq(200) // HTTP durum kodu kontrolü
expect(response.body).to.have.length(10) // Kullanıcı sayısı kontrolü
})
})
})





POST İsteği ile Veri Gönderme

API testlerinde yalnızca veri almak değil, aynı zamanda veri göndermek de test edilmelidir. İşte bir POST isteği örneği:


describe('API Testi - POST Yeni Gönderi', () => {
it('Yeni gönderi oluşturmalı', () => {
cy.request('POST', 'https://jsonplaceholder.typicode.com/posts', {
title: 'Cypress Test',
body: 'Bu bir Cypress API testidir.',
userId: 1
}).then((response) => {
expect(response.status).to.eq(201) // Oluşturma başarılı mı?
expect(response.body).to.have.property('id') // ID alanı var mı?
})
})
})


Cypress ile API Testlerinde En İyi Uygulamalar

Environment kullanın: API URL’lerini ve test verilerini cypress.env.json dosyasında saklayın.

Senaryoları çeşitlendirin: Hem başarılı hem de başarısız istekleri test edin.

Testleri entegre edin: API testlerini UI testleriyle birleştirerek uçtan uca senaryolar oluşturun.

Sonuç

Cypress, yalnızca web arayüzü testlerinde değil, API testlerinde de oldukça güçlü bir çözümdür. Basit komutlarla API çağrıları yapabilir, yanıtları doğrulayabilir ve otomasyon sürecinizi daha kapsamlı hale getirebilirsiniz.

Yazar: Mert Akbağ



Bu yazıyı beğendiniz mi?

Yazılım testi hakkında daha fazla içerik için blog sayfamı ziyaret edin veya benimle iletişime geçin.