REST ASSURED TECHNIQUES: USING WIREMOCK API MOCKING & JMETER LOAD TESTING EĞİTİMİ

Servisi taklit et, yük altında sınayarak doğrula

WireMock stub, verify ve fault özellikleriyle dış bağımlılıkları taklit edin; JMeter ile yük testi yürütüp REST Assured işlevsel testleriyle birleştirin.

WireMock stub, verify ve fault özellikleriyle dış bağımlılıkları taklit edin; JMeter ile yük testi yürütüp REST Assured işlevsel testleriyle birleştirin.

3 gün İleri Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

REST Assured ile WireMock API taklidi ve JMeter yük testi: stub, doğrulama, hata, korelasyon ve darboğaz analizi

Bu ileri seviye eğitim, REST Assured işlevsel testlerini WireMock taklidi ve JMeter yük testiyle tamamlar. WireMock sunucu ve JUnit uzantısı, urlPathEqualTo ve withRequestBody eşleştirme, Handlebars şablonlu yanıt, verify ile çağrı doğrulama, record ve playback, senaryo tabanlı durum ve fault enjeksiyonu işlenir. JMeter test planı, ramp-up, CSV Data Set, JSON Extractor ile korelasyon, assertion, non-GUI çalıştırma ve HTML panosu, p95/p99 yorumlama ve darboğaz analizi uygulanır.

Süre ve Format

3 Gün. Her gün dört modül; katılımcılar Test Temeli ve Çatı → WireMock ile Taklit → JMeter ile Yük Testi sırasıyla ilerler.

Seviye

İleri Seviye — REST Assured ile WireMock API taklidi ve JMeter yük testi: stub, doğrulama, hata, korelasyon ve darboğaz analizi.

Öğrenme Metodu

Katılımcılar dış servis bağımlılığı olan bir API'yi WireMock ile izole test eder, ardından JMeter ile yük altında davranışını ölçüp rapor eder.

Neden Bu Eğitim?

🎭Bağımlılık İzolasyonu

Dış servisleri taklit edip testleri hızlı ve kararlı hale getirirsiniz.

🏋️Yük Altında Gerçek

JMeter ile gerçekçi kullanıcı yükü oluşturup darboğazı bulursunuz.

🔗Bütünleşik Strateji

İşlevsel ve performans testlerini aynı hatta birleştirirsiniz.

Anahtar Konular

WireMockJMeterAPI mockingyük testiREST Assuredperformans testiJMeter korelasyonstubp95 p99API taklit
“Bağımlılığı yönet, yükü ölç, sonra güvenle yayınla.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
Java Temelleri

Sınıf, metot, koleksiyon ve generics konularında temel Java bilgisi gerekir.

2
HTTP ve JSON

HTTP metotları, durum kodları ve JSON yapısına aşinalık beklenir.

3
Maven ve IDE

Maven bağımlılık yönetimi ve IntelliJ IDEA veya Eclipse kullanımına genel hakimiyet faydalıdır.

4
Çalışma Ortamı

JDK 17+, Maven ve internet erişimi olan bir dizüstü bilgisayar hazır bulunmalıdır.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı REST Assured projesini Maven ile kurar ve given/when/then kalıbıyla ilk testleri yazar, Sorgu/yol parametreli, gövdeli ve kimlik doğrulamalı uç noktaları REST Assured ile test eder, Hamcrest ve Matchers ile koleksiyon, metin ve sayısal doğrulamalar yazar ve RequestSpecification, ResponseSpecification ve katmanlı test çatısı tasarlar.
Modül 1
REST Assured ile İlk Testler
  • Maven bağımlılıkları: rest-assured, JUnit 5 veya TestNG ve hedef Java sürümü yapılandırması
  • given() / when() / then() söz dizimi ve BDD tarzı okunabilir test cümleleri
  • RestAssured.baseURI, basePath ve port ayarlarıyla ortama göre hedef belirleme
  • GET isteğiyle durum kodu, Content-Type ve gövdeden alan okuma (extract().path())
  • log().all(), log().ifValidationFails() ile istek ve yanıtın günlüklenmesi
  • Test API'si olarak JSON Server veya ReqRes kullanımı ve ilk test sınıfının çalıştırılması
Modül 2
REST Assured ile Farklı HTTP Uç Noktalarını Test Etme
  • pathParam, queryParam, formParam ve header ile istek parametrelerinin gönderilmesi
  • POST/PUT/PATCH gövdesini Map, JSON dizesi ve POJO (Jackson serileştirme) ile gönderme
  • DELETE ve idempotency doğrulaması: aynı isteği iki kez gönderip sonuçları karşılaştırma
  • Basic, preemptive basic, OAuth 2.0 Bearer ve API anahtarı ile kimlik doğrulama (auth())
  • multipart/form-data dosya yükleme, cookie yönetimi ve yönlendirme (redirect) davranışı
  • XML yanıtları için XmlPath ve içerik tipine göre ayrıştırıcı (parser) seçimi
Modül 3
Hamcrest Eşleştiricileri ile Yanıt Doğrulama
  • equalTo, not, nullValue, notNullValue ve is() ile temel eşleştiriciler
  • hasItem, hasItems, hasSize, containsInAnyOrder, everyItem ile liste doğrulamaları
  • startsWith, containsString, matchesPattern ile metin ve düzenli ifade doğrulaması
  • greaterThan, lessThanOrEqualTo, closeTo ile sayısal ve ondalık aralık kontrolleri
  • allOf, anyOf ve özel (custom) TypeSafeMatcher yazarak yeniden kullanılabilir doğrulama
  • Doğrulama başarısızlık mesajlarını okuma ve anlamlı hata açıklaması üretme
Modül 4
REST Assured Test Mimarisi ve Yapılandırma
  • RequestSpecBuilder ve ResponseSpecBuilder ile ortak başlık, taban URL ve beklentilerin merkezi tanımı
  • Page Object benzeri API istemci sınıfları (service object) ve test verisi oluşturucular (builder)
  • Ortam yapılandırması: properties/YAML dosyaları, Maven profilleri ve sistem özellikleri
  • Filter arayüzü ile istek/yanıt kesme, token yenileme ve özel günlükleme
  • Test verisi yönetimi: @BeforeAll/@AfterEach ile oluştur-sil döngüsü ve bağımsız testler
  • Paralel çalıştırma, JUnit 5 etiketleri (tag) ve duman/regresyon paketlerinin ayrıştırılması
Günün hedefiKatılımcı WireMock ile stub, eşleştirme ve doğrulama yaparak dış bağımlılıkları taklit eder, Hatalı yanıtları, zaman aşımını ve bozuk veriyi simüle ederek dayanıklılık testi yazar, Test piramidi, tüketici güdümlü sözleşme testi (Pact) ve Testcontainers ile test yazar ve GPath ile JSON ayrıştırır ve JSON Schema Validator ile şema doğrular.
Modül 1
WireMock ile API Taklit (Mocking)
  • WireMock bağımsız sunucu ve JUnit 5 uzantısı (@WireMockTest) ile başlatma
  • stubFor, urlPathEqualTo, withQueryParam, withHeader ve withRequestBody ile istek eşleştirme
  • willReturn ile statik gövde, __files dizini ve Handlebars yanıt şablonları
  • verify(postRequestedFor(...)) ile çağrı doğrulaması ve zaman sayacı
  • Kayıt/oynatma (record & playback) ile gerçek servis yanıtlarından stub üretme
  • Senaryolar (scenarios) ile durumlu servis simülasyonu ve proxy ile kısmi taklit
Modül 2
Hata Yönetimi ve Hata Enjeksiyonu Testleri
  • Negatif test kataloğu: 400, 401, 403, 404, 409, 422 ve 500 yanıtlarının doğrulanması
  • HttpClientConfig ile bağlantı ve okuma zaman aşımı (connection/socket timeout) ayarları
  • WireMock fault tipleri: CONNECTION_RESET_BY_PEER, EMPTY_RESPONSE, MALFORMED_RESPONSE_CHUNK
  • Gecikme enjeksiyonu (fixedDelay, lognormal) ile yavaş bağımlılık davranışı
  • Yeniden deneme (retry) mantığı için senaryo tabanlı durum geçişi (scenario state)
  • Sınır değer, aşırı büyük gövde, geçersiz Unicode ve SQL/JSON enjeksiyonu benzeri bozuk girdi testleri
Modül 3
Mikroservis Test Stratejisi
  • Mikroservis test piramidi: birim, bileşen, entegrasyon, sözleşme ve uçtan uca testler
  • Tüketici güdümlü sözleşme testi: Pact ile consumer test ve provider doğrulama
  • Testcontainers ile gerçek PostgreSQL, Kafka ve Redis kullanan entegrasyon testleri
  • WireMock ve Spring Cloud Contract ile bağımlı servislerin taklit edilmesi
  • Üretimde test: canary, gölge (shadow) trafik ve özellik bayraklarıyla güvenli yayın
  • Kararsız (flaky) test nedenleri ve asenkron akışların Awaitility ile test edilmesi
Modül 4
JSON Yanıt ve Şema Doğrulama
  • JsonPath / GPath ifadeleri: data.items[0].id, findAll, collect, sum, max
  • İç içe dizilerde filtreleme: items.findAll { it.price > 100 }.name
  • json-schema-validator modülü ile matchesJsonSchemaInClasspath kullanımı
  • JSON Schema Draft-07 anahtarları: required, type, format, additionalProperties, minItems
  • Yanıtı POJO'ya eşleme (as(Class)) ve nesne düzeyinde assertJ doğrulaması
  • Şema sürüm değişikliğinde kırıcı değişiklikleri yakalayan sözleşme testi stratejisi
Günün hedefiKatılımcı JMeter test planı, iş parçacığı grupları ve toplayıcılarla API yük testi yürütür, Gecikme, bellek, veritabanı ve ağ darboğazlarını ölçer ve giderir, Merkezi günlük, Prometheus metrikleri ve OpenTelemetry ile dağıtık izleme kurar ve REST Assured testlerini Allure ve ExtentReports ile raporlar, CI hattına bağlar.
Modül 1
JMeter ile Yük Testi
  • Test planı yapısı: Thread Group, HTTP Request Defaults, HTTP Header Manager ve CSV Data Set Config
  • Ramp-up, döngü sayısı ve eş zamanlı kullanıcı modelleme; Throughput Timer ile hız kontrolü
  • JSON Extractor ve Regular Expression Extractor ile korelasyon (token, id taşıma)
  • Assertion türleri: Response, JSON Assertion ve Duration Assertion ile SLA denetimi
  • Komut satırı (non-GUI) çalıştırma: jmeter -n -t -l -e -o ile HTML panosu üretme
  • p90/p95/p99 yanıt süreleri, hata oranı ve throughput değerlerinin darboğaz analizine bağlanması
Modül 2
Mikroservis Performans Mühendisliği
  • Performans metrikleri: gecikme yüzdelikleri (p95/p99), throughput, doygunluk ve kuyruk uzunluğu
  • JVM profilleme: JFR, async-profiler, heap dump analizi ve GC ayarı (G1/ZGC)
  • N+1 sorgu, eksik indeks, bağlantı havuzu tükenmesi ve yavaş sorgu analizi (EXPLAIN)
  • Ağ maliyeti: konuşkan (chatty) servisler, toplu çağrı, gRPC ve sıkıştırma
  • Önbellekleme katmanları: Redis, yerel Caffeine önbelleği, geçerlilik süresi ve cache stampede önlemi
  • Gatling veya k6 ile yük testi, darboğaz tespiti ve ölçekleme kararı
Modül 3
Gözlemlenebilirlik: Günlük, Metrik ve İzleme
  • Üç sütun: günlük (log), metrik ve iz (trace); yapılandırılmış JSON günlük biçimi
  • ELK/EFK yığını veya Grafana Loki ile merkezi günlük toplama ve correlation ID
  • Micrometer ve Prometheus ile RED/USE metrikleri; Grafana panoları
  • OpenTelemetry, Jaeger/Zipkin ile dağıtık iz (span) ve bağlam yayılımı (W3C traceparent)
  • SLI, SLO ve hata bütçesi tanımı; Alertmanager ile uyarı kuralları
  • Sağlık uç noktaları: liveness, readiness ve Spring Boot Actuator yapılandırması
Modül 4
Allure ve ExtentReports ile Test Raporlama
  • Allure ile @Step, @Feature, @Story ek açıklamaları ve AllureRestAssured filtresi
  • Allure sonuç dizini (allure-results), allure serve ve trend/geçmiş grafikleri
  • ExtentReports ile HTML rapor, test kategorileri ve hata ekran/yük ekleme
  • Surefire/Failsafe raporları ve JUnit XML çıktısının CI araçlarında okunması
  • Jenkins veya GitHub Actions üzerinde rapor yayınlama (artifact, Pages) ve Slack bildirimi
  • Hatalı testlerde istek/yanıt günlüğünün rapora eklenmesi ve gizli bilgilerin maskelenmesi

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
REST Assured Başlangıç

given/when/then kalıbıyla çalışan ilk REST Assured testlerini yazıp çalıştırabilirsiniz.

🧩
Hamcrest Doğrulama

Hamcrest eşleştiricileriyle koleksiyon ve metin doğrulamalarını okunabilir biçimde yazabilirsiniz.

🛠️
Test Mimarisi

Yeniden kullanılabilir spesifikasyonlarla bakımı kolay bir API test çatısı kurabilirsiniz.

🔐
Hata Enjeksiyonu

Zaman aşımı, 5xx ve bozuk yanıt senaryolarını test edip hata işleme davranışını doğrulayabilirsiniz.

📈
Test Stratejisi

Birim, sözleşme ve uçtan uca testleri dengeli bir mikroservis test stratejisine yerleştirebilirsiniz.

🧪
JMeter Yük Testi

JMeter ile API için yük senaryosu tasarlayıp performans sonuçlarını yorumlayabilirsiniz.

🚀
Performans Mühendisliği

Mikroservislerde profil çıkarıp gecikme ve kaynak sorunlarının kök nedenini bulabilirsiniz.

🔎
Test Raporlama

Allure veya ExtentReports ile istek/yanıt detaylı test raporları üretip CI'da yayınlayabilirsiniz.

Kimler İçin Uygundur?

  • API işlevsel ve performans testini birlikte yürüten SDET'ler
  • QA mühendisleri
  • performans test uzmanları için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
API işlevsel ve performans testini birlikte yürüten SDET'ler, QA mühendisleri ve performans test uzmanları için uygundur.
JMeter GUI mi komut satırı mı?
Test planı GUI ile hazırlanır, yük testi non-GUI modda çalıştırılır ve HTML panosu üretilir.
WireMock gerçek servisin yerini alır mı?
Hayır, izole ve hızlı testler için kullanılır; gerçek servisle entegrasyon testi ayrıca yapılır.
Gatling veya k6 ele alınıyor mu?
Odak JMeter'dır; k6 ve Gatling ile karşılaştırma kısaca verilir.
Eğitim sonunda sertifika verilir mi?
Eğitimi tamamlayan katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir. Üçüncü taraf kurumların sınav ve sertifikalarıyla bir bağı yoktur.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. REST Assured Techniques: Using WireMock API Mocking & JMeter Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre3 gün
Seviyeİleri Seviye
FormatOnline / Yüz Yüze / Hibrit
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

API ve Mikroservis MimarisiAPI Development: REST API Data Models Eğitimi
Yazılım Geliştirme Eğitimleri

API Development: REST API Data Models Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

JSON Schema, DTO, HAL ve JSON:API, OpenAPI şemaları, cursor sayfalama, sürümleme ve sözleşme testi ile REST API veri modeli tasarımı eğitimi.

Detayları Gör →
API ve Mikroservis MimarisiAPI Development: REST API Semantics Eğitimi
Yazılım Geliştirme Eğitimleri

API Development: REST API Semantics Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

GET, POST, PUT, PATCH, DELETE semantiği, idempotency, durum kodları, ETag, If-Match, content negotiation ve HATEOAS ile REST API semantiği eğitimi.

Detayları Gör →
API ve Mikroservis MimarisiAPI Development: Tools Eğitimi
Yazılım Geliştirme Eğitimleri

API Development: Tools Eğitimi

2 günTemelOnline / Yüz Yüze / Hibrit

curl, Postman, SoapUI, Swagger ve OpenAPI araçları, JMeter ve Burp Suite ile API geliştirme, test ve güvenlik araç setini tanıtan eğitim.

Detayları Gör →
API ve Mikroservis MimarisiAPI Development: URIs & Caching Eğitimi
Yazılım Geliştirme Eğitimleri

API Development: URIs & Caching Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

URI adlandırma, sorgu parametreleri, sayfalama, Cache-Control, ETag, CDN önbelleği ve gateway ile hızlı REST API tasarımı eğitimi.

Detayları Gör →
API ve Mikroservis MimarisiAPI Entegrasyonları ile Make: Gelişmiş Otomasyon Eğitimi
Yazılım Geliştirme Eğitimleri

API Entegrasyonları ile Make: Gelişmiş Otomasyon Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

Make HTTP modülü, webhook, OAuth 2.0, router, iterator, aggregator ve Break hata işleyicileriyle gelişmiş API entegrasyon ve otomasyon eğitimi.

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn