⚙️ Kurulum

Kurulum: Gauge kurulumu, bir matkap + uç seti almaya benzer: önce gövdeyi (gauge CLI) alırsın, ama gövde tek başına delik açmaz — hangi malzemeyi deleceksen ona uygun ucu (java p

Gauge kurulumu, bir matkap + uç seti almaya benzer: önce gövdeyi (gauge CLI) alırsın, ama gövde tek başına delik açmaz — hangi malzemeyi deleceksen ona uygun ucu (java plugin, html-report plugin) takman gerekir. Bu yüzden kurulum İKİ aşamalıdır: `gauge` komutu + `gauge install java`. Peki neden Gauge her şeyi tek kurulumda getirmiyor — kullanıcıyı neden plugin kurmaya "uğraştırıyor"? Çünkü Gauge dil-bağımsız bir çekirdektir: Java, JavaScript, Python, C# ekipleri aynı çekirdeği kullanır; her dilin runtime'ını pakete gömmek kurulumu yüzlerce MB yapardı. Java tarafındaki karşılığı düşün: JDK kurarsın ama Maven bağımlılıkları projeye göre ayrı iner — çekirdek ile ihtiyaç ayrıştırılmıştır. QA bağlamında bu iki aşamalılık ilk gün seni bekleyen 1 numaralı tuzaktır: CI agent'ına sadece gauge CLI kurulur, java plugin'i unutulur ve pipeline "Failed to start gauge API" ile kırılır — hata mesajı plugin'den bahsetmediği için ekipler saatlerce yanlış yerde arar. Bu sekmedeki verification adımlarını atlarsan bu tuzağa CI'da yakalanırsın.

🔌 Plugin Kurulumu: Matkaba Ucu Takmak

gauge version çıktısındaki "Plugins: (none)" satırına dikkat: gövde hazır ama uç yok. Java projesi koşabilmek için java plugin'i, okunabilir rapor için html-report plugin'i şarttır. Plugin'ler ~/.gauge (Windows'ta %APPDATA%\gauge) altına iner ve tüm projeler tarafından paylaşılır — Java'daki global Maven repository (~/.m2) mantığıyla aynıdır.

Kurulumu Doğrulama Refleksi

gauge version çalıştır

Her kurulum adımından sonra bu komutu çalıştırmayı alışkanlık hâline getir — çıktıdaki Plugins listesi tek doğruluk kaynağıdır.

"(none)" görürsen DUR

Plugin listesi boşken gauge run denemek "Failed to start gauge API" hatasına doğrudan gider.

gauge install java ve gauge install html-report çalıştır — CI imajına da bu iki satırı sabitle.

Tekrar doğrula, sonra koş

gauge version çıktısında java ve html-report İKİSİ de listelenmeden gauge run specs deneme.

🏗️ İlk Projeyi Oluştur: gauge init java

Oluşan yapının haritası: specs/ klasörü Markdown senaryolarını tutar (restoran benzetmesindeki sipariş fişleri), src/test/java/ altında step implementation'ları yaşar (mutfak), env/default/ ortam konfigürasyonlarını içerir (default.properties), manifest.json projenin hangi dil plugin'ini kullandığını söyler. Maven ile çalışacaksan pom.xml'e gauge-java bağımlılığını ve gauge-maven-plugin'i eklersin — böylece testler hem gauge run hem mvn ile koşar.

Micro Lab: Gauge spec-step zinciri kurma