ADVANCED SELENIUM FRAMEWORKS: CONTINUOUS INTEGRATION PIPELINES WITH JENKINS EĞİTİMİ

Selenium testlerini Jenkins hattında paralel koştur

Page Object Model çerçevesi, TestNG paralel koşum, Jenkinsfile aşamaları, Selenium Grid ve Allure raporlamasıyla CI entegrasyonu

Selenium WebDriver çerçevesini Page Object Model ile kurup TestNG paralel koşum, Selenium Grid ve Jenkins declarative pipeline üzerinden her commit'te tetikleyen ileri seviye test otomasyon CI eğitimi.

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

Eğitim Hakkında

Sürdürülebilir Selenium çerçevesini Jenkins declarative pipeline'a bağlayıp her commit'te tetikleme

Bu eğitim, Selenium WebDriver tabanlı UI test otomasyonunu kurumsal ölçekte sürdürülebilir hale getirmeyi ve Jenkins üzerinde sürekli entegrasyona bağlamayı öğretir. Page Object Model ve Page Factory ile bakım maliyeti düşük çerçeve kurulumu, TestNG XML suite'leri ve thread-count ile paralel koşum, Selenium Grid 4 ve Docker tabanlı tarayıcı düğümleri, Maven Surefire/Failsafe yapılandırması, Jenkinsfile içinde checkout-build-test-report aşamaları, Allure ve ExtentReports ile raporlama ile WebDriverManager kullanımı somut örneklerle işlenir. Explicit wait stratejileri, flaky test ayıklama ve ortam değişkenleriyle çoklu tarayıcı yapılandırması uygulamalı olarak ele alınır.

Süre ve Format

4 Gün. Her gün dört modül; sabah çerçeve tasarımı ve kod, öğleden sonra Jenkins ve paralel koşum laboratuvarı.

Seviye

İleri Seviye — Page Object Model tabanlı Selenium çerçevelerini TestNG ile paralel koşturup Jenkins declarative pipeline üzerinden tetikleyen uçtan uca test otomasyon hattı

Öğrenme Metodu

Her katılımcı kendi Maven projesinde POM çerçevesi kurar ve Jenkins'te declarative pipeline tanımlayarak testleri gerçek tarayıcı düğümlerinde koşturur.

Neden Bu Eğitim?

🧩Bakımı Kolay Çerçeve

Page Object Model ve Page Factory ile locator değişikliklerinde yalnızca tek sınıfı güncelleyerek test kırılganlığını azaltırsınız.

⚡Paralel Koşum

TestNG thread-count ve Selenium Grid ile yüzlerce testi dakikalar içinde birden çok tarayıcıda eşzamanlı koşturursunuz.

🔁Her Commit'te Test

Jenkins webhook tetiklemesiyle her push sonrası regresyon paketini otomatik koşup geri bildirimi anında alırsınız.

Anahtar Konular

selenium jenkinspage object modeltestng paralel koşumselenium gridjenkins declarative pipelinetest otomasyonu ciallure raporwebdrivermanagerjenkinsfileci cd test
“İyi bir test otomasyonu yazmak kadar önemli olan, onu her commit'te güvenle koşturabilmektir.”

Ön Koşullar

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

1
Java Temeli

Sınıf, metot, kalıtım ve koleksiyon gibi temel Java kavramlarına hakim olmak gerekir.

2
Selenium Girişi

WebDriver ile temel element bulma ve tıklama işlemlerini daha önce denemiş olmak faydalıdır.

3
Maven/Git

Maven bağımlılık yönetimi ve Git ile commit/push akışına aşinalık beklenir.

4
Çalışma Ortamı

JDK 17, IntelliJ IDEA veya Eclipse, Docker Desktop ve yerel Jenkins kurabilecek bir makine önerilir.

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ı, locator ve test mantığını ayıran bakımı kolay bir Selenium çerçevesini sıfırdan kurabilir.
Modül 1
Proje İskeleti ve Bağımlılıklar
  • Maven pom.xml içinde selenium-java, testng, webdrivermanager bağımlılıkları
  • src/main ve src/test dizin ayrımıyla çerçeve ve test kodu katmanlama
  • BaseTest sınıfında @BeforeMethod/@AfterMethod ile driver yaşam döngüsü
  • ThreadLocal<WebDriver> ile paralel koşumda driver izolasyonu
  • config.properties dosyasından baseUrl ve tarayıcı okuma
  • Maven Surefire eklentisi ile testng.xml bağlama
Modül 2
Page Object Model
  • Her sayfa için ayrı POM sınıfı ve anlamlı metot adları
  • @FindBy anotasyonu ve PageFactory.initElements kullanımı
  • Sayfa metotlarının akıcı (fluent) zincirleme dönüşleri
  • Ortak bileşenler için BasePage soyutlaması
  • Locator'ları By sabitleri olarak merkezileştirme
  • Sayfa doğrulamalarını assertion'dan ayırıp test sınıfına bırakma
Modül 3
Bekleme Stratejileri
  • Implicit wait ile explicit wait farkı ve karışık kullanımın riski
  • WebDriverWait ve ExpectedConditions.visibilityOfElementLocated
  • FluentWait ile polling interval ve ignore exception
  • Elementin tıklanabilir olmasını bekleme (elementToBeClickable)
  • Ajax/JS yüklemeleri için dinamik bekleme yaklaşımı
  • Sabit Thread.sleep kullanımından kaçınma gerekçeleri
Modül 4
Tarayıcı Yönetimi
  • WebDriverManager ile sürücü binary otomatik indirme
  • ChromeOptions ve FirefoxOptions ile headless mod
  • -disable-gpu, --no-sandbox gibi CI dostu argümanlar
  • DriverFactory deseniyle tarayıcı seçimini soyutlama
  • Uzak sürücü için RemoteWebDriver ve URL yapılandırması
  • Pencere boyutu ve indirme dizini ön ayarları
Günün hedefiKatılımcı, testleri gruplayıp paralel koşturur ve Selenium Grid üzerinde çoklu tarayıcı yapılandırır.
Modül 1
TestNG Suite Yapılandırması
  • testng.xml ile test, class ve method düzeyinde gruplama
  • @Test(groups=...) ile smoke/regression ayrımı
  • include/exclude ile seçici koşum
  • @Parameters ve suite parametreleriyle tarayıcı aktarma
  • Listener (ITestListener) ile başarısız test ekran görüntüsü
  • retryAnalyzer ile flaky testleri yeniden deneme
Modül 2
Paralel Koşum
  • parallel="methods|classes|tests" ve thread-count ayarı
  • ThreadLocal driver ile paralel izolasyonun garanti altına alınması
  • Paylaşılan durum (static) kaynaklı yarış koşullarını önleme
  • Paralel koşumda rapor birleştirme sorunları
  • Sürücü oluşturmanın thread başına yapılması
  • CPU/çekirdek sayısına göre thread-count ayarlama
Modül 3
Veri Odaklı Test
  • @DataProvider ile Object[][] veri besleme
  • Excel/CSV'den Apache POI ile veri okuma
  • parallel=true DataProvider ile veri setini paralel koşma
  • Harici JSON test verisini Jackson ile ayrıştırma
  • Negatif/pozitif senaryoları tek testte parametreleme
  • Veri ile test adını okunaklı etiketleme
Modül 4
Selenium Grid 4
  • Hub ve Node mimarisi yerine Grid 4 standalone/distributed modu
  • docker-compose ile selenium-hub ve chrome/firefox düğümleri
  • RemoteWebDriver ile grid URL'sine bağlanma
  • Düğüm başına maxSessions ve eşzamanlılık
  • Grid üzerinde oturum izleme ve video kaydı
  • Dağıtık koşumda tarayıcı sürüm uyumu
Günün hedefiKatılımcı, Selenium testlerini Jenkinsfile içinde tanımlı aşamalarla her commit'te otomatik koşturur.
Modül 1
Jenkins Kurulumu ve Yapılandırma
  • Jenkins LTS kurulumu ve önerilen eklentiler (Git, Pipeline, Allure)
  • Global Tool Configuration ile JDK ve Maven tanımlama
  • Agent/node kavramı ve label ile iş yönlendirme
  • Docker agent kullanarak izole koşum ortamı
  • Çok dallı (multibranch) pipeline projesi oluşturma
  • Jenkins güvenliği ve rol tabanlı erişim temeli
Modül 2
Declarative Pipeline Aşamaları
  • pipeline, agent, stages, steps blok yapısı
  • Checkout, Build, Test, Report aşamalarını tanımlama
  • sh/bat ile mvn clean test -Dsuite=regression çağrısı
  • environment bloğu ile BROWSER, BASE_URL değişkenleri
  • post bloğunda always/success/failure eylemleri
  • parallel bloğu ile tarayıcıları eşzamanlı koşma
Modül 3
Tetikleyiciler ve Zamanlama
  • GitHub/GitLab webhook ile push tetiklemesi
  • pollSCM ve cron ile zamanlanmış gece koşumu
  • triggers bloğunda upstream/downstream bağımlılık
  • Değişen dosyaya göre koşum (changeset)
  • Pull request açılışında doğrulama koşumu
  • Manuel onay (input) adımı ile kontrollü koşum
Modül 4
Kimlik Bilgileri ve Parametreler
  • Jenkins Credentials ile gizli değer saklama
  • withCredentials ile test ortamı parolası enjekte etme
  • parameters bloğunda choice ile ortam seçimi
  • credentials() yardımcısıyla ortam değişkenine aktarma
  • Grid URL ve token'ı güvenli aktarma
  • Gizli değerlerin loglara sızmasını engelleme
Günün hedefiKatılımcı, koşum sonuçlarını zengin raporlarla sunar ve flaky testleri sistematik olarak azaltır.
Modül 1
Allure Raporlama
  • allure-testng bağımlılığı ve sonuç dizini
  • @Step, @Severity, @Description anotasyonları
  • Jenkins Allure eklentisiyle trend grafiği
  • Başarısız adıma ekran görüntüsü ekleme (attachment)
  • Kategori dosyasıyla hata sınıflandırma
  • Geçmiş koşumlarla trend karşılaştırması
Modül 2
Ekran Görüntüsü ve Loglama
  • TakesScreenshot ile başarısızlıkta otomatik ekran yakalama
  • ITestListener onTestFailure kancasında yakalama
  • Log4j/SLF4J ile seviyeli loglama
  • Konsol loglarını (browser logs) toplama
  • Video kaydı için grid entegrasyonu
  • Hata ayıklama için sayfa kaynağını kaydetme
Modül 3
Artifact Arşivleme
  • archiveArtifacts ile rapor ve ekran görüntüsü saklama
  • junit adımıyla TestNG XML sonucunu yayınlama
  • Artifact saklama süresi (build retention) ayarı
  • fingerprint ile artifact izlenebilirliği
  • stash/unstash ile aşamalar arası dosya aktarımı
  • Rapor linkini commit statüsüne yansıtma
Modül 4
Flaky Test ve Kararlılık
  • Flaky nedenleri: bekleme, veri, sıralama, ortam
  • IRetryAnalyzer ile sınırlı yeniden deneme
  • Kararsız testleri karantinaya alma stratejisi
  • Test bağımsızlığı ve ortak durum temizliği
  • Zaman aşımı eşiklerini gerçekçi ayarlama
  • Koşum süresini izleyip yavaş testleri iyileştirme

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
POM Çerçevesi

Page Object Model ve Page Factory ile bakımı kolay bir test çerçevesi kurabilirsiniz.

✅
Paralel Koşum

TestNG thread-count ve Selenium Grid ile testleri paralel koşturabilirsiniz.

✅
Jenkinsfile Yazımı

Declarative pipeline ile checkout-build-test-report aşamalarını tanımlayabilirsiniz.

✅
Webhook Tetikleme

Her commit'te testleri otomatik tetikleyen bir CI akışı kurabilirsiniz.

✅
Veri Odaklı Test

DataProvider ve harici kaynaklarla veri odaklı senaryolar yazabilirsiniz.

✅
Allure Raporu

Allure ile ekran görüntülü, trendli test raporları üretebilirsiniz.

✅
Gizli Değer Yönetimi

Jenkins Credentials ile ortam parolalarını güvenle yönetebilirsiniz.

✅
Flaky Azaltma

Retry ve bekleme stratejileriyle kararsız testleri azaltabilirsiniz.

Kimler İçin Uygundur?

  • Selenium ile UI otomasyonu yazan ve testlerini CI hattına taşımak isteyen test otomasyon mühendisleri
  • SDET'ler
  • yazılım test uzmanları için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Selenium ile UI testi yazan ve testlerini Jenkins CI hattına taşımak isteyen test otomasyon mühendisleri ve SDET'ler için uygundur.
Hangi programlama dili kullanılıyor?
Selenium WebDriver Java bağlaması, TestNG ve Maven ekosistemi üzerinden ilerlenir; temel Java bilgisi beklenir.
Jenkins deneyimi gerekir mi?
Gerekmez; Jenkins kurulumu, agent yapılandırması ve declarative pipeline yazımı eğitim içinde sıfırdan ele alınır.
Paralel koşum nasıl sağlanıyor?
TestNG thread-count ile aynı makinede, Selenium Grid 4 ve Docker düğümleriyle dağıtık paralel koşum uygulamalı gösterilir.
Eğitim sonunda sertifika veriliyor mu?
Eğitimi tamamlayanlara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir.

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. Advanced Selenium Frameworks: Continuous Integration Pipelin Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre4 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

CI/CD ve Sürekli TeslimJenkins: Administration Eğitimi
DevOps ve Konteyner Eğitimleri

Jenkins: Administration Eğitimi

3 günİleriOnline / Yüz Yüze / Hibrit

Jenkins yöneticiliği: güvenlik, kullanıcı ve ajan yönetimi, yedekleme, izleme ve LTS yükseltmesini öğreten ileri seviye işletim eğitimi.

Detayları Gör →
CI/CD ve Sürekli TeslimJenkins: Creating Application Builds Eğitimi
DevOps ve Konteyner Eğitimleri

Jenkins: Creating Application Builds Eğitimi

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

Jenkins ile Maven, Gradle, npm ve Docker kullanarak uygulama derleme, bağımlılık yönetimi, artefakt ve imaj üretimini öğreten uygulamalı orta seviye eğitim.

Detayları Gör →
CI/CD ve Sürekli TeslimJenkins: Getting Started Eğitimi
DevOps ve Konteyner Eğitimleri

Jenkins: Getting Started Eğitimi

2 günBaşlangıçOnline / Yüz Yüze / Hibrit

Jenkins'e sıfırdan giriş: Docker ile kurulum, arayüz turu, ilk freestyle iş ve ilk pipeline ile otomasyona hızlı başlangıç yapın. Başlangıç seviyesi eğitim.

Detayları Gör →
CI/CD ve Sürekli TeslimJenkins: Testing & Continuous Integration Eğitimi
DevOps ve Konteyner Eğitimleri

Jenkins: Testing & Continuous Integration Eğitimi

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

Jenkins ile birim, entegrasyon ve UI testlerini CI hattına entegre etmeyi, rapor, kapsam ve kalite kapılarını öğreten uygulamalı orta seviye eğitim.

Detayları Gör →
CI/CD ve Sürekli TeslimJMeter in DevOps: CI/CD Pipeline Integration Eğitimi
DevOps ve Konteyner Eğitimleri

JMeter in DevOps: CI/CD Pipeline Integration Eğitimi

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

Apache JMeter performans testlerini CI/CD hattına entegre etmeyi, non-GUI çalıştırmayı, trend raporlarını ve performans kapılarını öğreten orta seviye eğitim.

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