H4 · JSON Schema Validation ile: H2'de her alanı TEK TEK doğrulamıştın (`title`, `severity`, ...); JSON Schema Validation ise F4'te gördüğün ŞEMANIN TAMAMINI TEK bir satırda doğr
H2'de her alanı TEK TEK doğrulamıştın (`title`, `severity`, ...); JSON Schema Validation ise F4'te gördüğün ŞEMANIN TAMAMINI TEK bir satırda doğrular: `matchesJsonSchemaInClasspath("bug-schema.json")`. Bu, F5'teki "contract defect" avcılığını OTOMATİKLEŞTİRİR — artık her response'u elle karşılaştırmak yerine, spec'ten üretilen bir JSON Schema dosyasını REST Assured'a "bunu her zaman kontrol et" dersin. Peki neden hâlâ H2'deki tek tek `.body(...)` doğrulamalarını da kullanıyoruz, sadece şema doğrulaması YETMEZ mi? Çünkü şema doğrulaması sadece ŞEKLİ (tip, zorunlu alan) kontrol eder — belirli bir DEĞERİ (örn. "title tam olarak bu metin olmalı") kontrol ETMEZ; ikisi TAMAMLAYICIDIR: şema "yapı doğru mu", tek tek `.body()` "içerik doğru mu" sorusuna cevap verir. **Derin JSON Schema Validation rehberi için → `/rest-assured` sayfasına bak.**
🎬 F5'teki Avı Otomatikleştirmek
Elle karşılaştırma (F5)
Her koşumda otomatik kontrol
F5'te contract defect'leri ELLE, spec'i gerçek response'la karşılaştırarak buluyordun.
F4/F6'daki şema bir `bug-schema.json` dosyasına dönüştürülür.
`matchesJsonSchemaInClasspath(...)` bu dosyayı HER test koşumunda otomatik kontrol eder — elle karşılaştırma artık geçmişte kaldı.
Şemadan Otomatik Contract Testine
F4/F6'daki JSON şemasını bir .json dosyası olarak projeye ekle.