SELENIUM DEEP DIVE: MANAGING SYNCHRONIZATION & PAGE NAVIGATION EĞİTİMİ

Flaky testleri bitirin: doğru bekleme, doğru gezinme

Implicit, explicit ve fluent wait, ExpectedConditions ve navigate ile kararlı testler kurun

Selenium Deep Dive: Managing Synchronization & Page Navigation Eğitimi, test otomasyonunun en sık kararsızlık nedeni olan zamanlama ve gezinme sorunlarını çözmeyi öğretir.

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

Eğitim Hakkında

Implicit ve explicit wait'ten fluent wait'e, ExpectedConditions'tan navigate ve çerez yönetimine

Selenium Deep Dive: Managing Synchronization & Page Navigation Eğitimi, test otomasyonunun en sık kararsızlık nedeni olan zamanlama ve gezinme sorunlarını kökten çözmeyi öğretir. Katılımcılar implicit, explicit ve fluent wait ayrımını, ExpectedConditions koşullarını, özel bekleme koşulu yazmayı, page load strategy'yi, get ve navigate komutlarını, çerez ve tarayıcı geçmişi yönetimini, pencere boyutlandırmayı ve StaleElement sorunlarını uygulamalı olarak işler.

Süre ve Format

4 Gün. Her gün dört modül; bekleme ve gezinme konuları önce anlatılır, ardından kararsızlık üreten senaryolarda uygulamalı olarak çözüldüğü atölyelerle pekişir.

Seviye

Orta Seviye — Kararsız testlerle boğuşan Selenium kullanıcıları için bekleme ve gezinme odaklı

Öğrenme Metodu

Kararsızlık üreten senaryolar demo sayfalarında ele alınır; farklı wait türleri ve navigate komutları karşılaştırmalı gözlemlenir.

Neden Bu Eğitim?

⏱️Kararsızlık çözümü

Thread.sleep'i bırakıp doğru bekleme stratejileriyle flaky testleri ortadan kaldırarak güvenilir koşumlar elde edersiniz.

🧠Doğru wait seçimi

Implicit, explicit ve fluent wait ayrımını kavrayıp her senaryoda hangi bekleme türünün uygun olduğunu bilerek kullanırsınız.

🧭Sağlam gezinme

Navigate, çerez ve geçmiş yönetimiyle sayfalar ve oturumlar arası akışı test içinde kontrollü biçimde yönetirsiniz.

Anahtar Konular

selenium wait eğitimiexplicit wait kullanımıfluent wait seleniumexpectedconditionsflaky test çözümüselenium senkronizasyonselenium navigatestaleelement hatasıtest otomasyonu eğitimiselenium çerez yönetimi
“Flaky test bir kader değil, yanlış bekleme kararının sonucudur. Doğru senkronizasyon, aynı testi her koşuda aynı sonuca ulaştırır.”

Ön Koşullar

Programdan verim almak için gereken Selenium temeli ve ortam

1
Selenium temeli

WebDriver ile element bulma ve temel etkileşim komutlarıyla test yazabilme düzeyi beklenir.

2
Locator deneyimi

CSS selector ve XPath ile element bulma konusunda temel düzeyde aşinalık gerekir.

3
Java temeli

Lambda ifadeleri ve temel exception yönetimi dahil temel Java bilgisi gereklidir.

4
Çalışan ortam

JDK, bir IDE ve güncel tarayıcı sürücüsü kurulu çalışan geliştirme ortamı gereklidir.

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ı test kararsızlığının nedenlerini kavrar, Thread.sleep'in sakıncalarını görür, implicit ve explicit wait arasındaki farkı öğrenir ve ilk güvenilir beklemeyi kurar.
Modül 1
Kararsızlığın Kökeni
  • Sayfa yüklenme ile betik hızının uyumsuzluğu
  • AJAX ve animasyonların element hazırlığını geciktirmesi
  • Thread.sleep ile sabit beklemenin sakıncaları
  • Sabit beklemenin yavaşlık ve kırılganlık dengesi
  • ElementNotInteractableException'ın zamanlama kökeni
  • Güvenilir test için senkronizasyon ihtiyacının kavranması
Modül 2
Implicit Wait Kullanımı
  • manage().timeouts().implicitlyWait yapılandırması
  • Implicit wait'in tüm findElement çağrılarına etkisi
  • Elementin bulunması için küresel bekleme tanımı
  • Implicit wait'in görünürlük değil varlık beklemesi
  • Varsayılan sıfır bekleme davranışının kavranması
  • Küresel implicit wait'in olası yan etkileri
Modül 3
Explicit Wait ve WebDriverWait
  • WebDriverWait ile belirli koşula kadar bekleme
  • until metoduyla koşulun karşılanmasını bekleme
  • Duration.ofSeconds ile zaman aşımı tanımı
  • Explicit wait'in tek elemente hedefli uygulanması
  • Koşul sağlanınca beklemenin erken bitmesi
  • TimeoutException durumunun anlamlandırılması
Modül 4
Implicit ve Explicit Karışımı
  • İki wait türünün birlikte kullanımının riski
  • Beklenmedik uzun beklemelerin kök nedeni
  • Tek strateji tercih etmenin önerilmesi
  • Explicit wait'e geçişin genel yaklaşımı
  • Timeout değerlerinin ortama göre ayarlanması
  • Bekleme stratejisinin çerçeve genelinde tutarlılığı
Günün hedefiKatılımcı ExpectedConditions kataloğunu kullanır, görünürlük ve tıklanabilirlik gibi koşulları bekler, FluentWait ile polling ayarlar ve özel bekleme koşulu yazar.
Modül 1
ExpectedConditions Kataloğu
  • visibilityOfElementLocated ile görünürlük bekleme
  • elementToBeClickable ile tıklanabilirliği bekleme
  • presenceOfElementLocated ile DOM'da varlık bekleme
  • textToBePresentInElement ile metin bekleme
  • invisibilityOfElement ile yükleniyor ögesinin kaybı
  • titleContains ve urlContains ile sayfa durumu
Modül 2
Koşul Kombinasyonları
  • and ve or ile birden çok koşulun birleştirilmesi
  • not ile koşulun tersinin beklenmesi
  • alertIsPresent ile uyarı görünürlüğünün beklenmesi
  • frameToBeAvailableAndSwitchToIt ile frame beklemesi
  • numberOfElementsToBe ile liste uzunluğu bekleme
  • Koşul seçiminin senaryoya göre eşlenmesi
Modül 3
FluentWait ve Polling
  • FluentWait ile zaman aşımı ve yoklama aralığı tanımı
  • pollingEvery ile kontrol sıklığının ayarlanması
  • ignoring ile belirli istisnaların yok sayılması
  • StaleElementReference'ın polling sırasında atlanması
  • Yavaş yüklenen bileşenlere esnek bekleme
  • FluentWait ile WebDriverWait arasındaki ilişki
Modül 4
Özel Bekleme Koşulları
  • ExpectedCondition arayüzüyle özel koşul yazma
  • Lambda ile koşulun kısa biçimde ifade edilmesi
  • Özel öznitelik değeri değişimini bekleme
  • AJAX isteği bitişini jQuery.active ile bekleme
  • Özel koşulun yeniden kullanılabilir yardımcıya taşınması
  • Anlamlı bekleme mesajlarıyla hata ayıklama kolaylığı
Günün hedefiKatılımcı get ve navigate komutlarını ayırt eder, tarayıcı geçmişinde ileri geri dolaşır, sayfayı yeniler ve page load strategy ile yükleme davranışını yönetir.
Modül 1
get ve navigate Komutları
  • driver.get ile sayfanın açılması ve yükleme beklemesi
  • navigate().to ile adrese gitme farkı
  • URL doğrulamasıyla hedef sayfaya ulaşımın onayı
  • Yönlendirme (redirect) sonrası URL'nin doğrulanması
  • Göreli ve mutlak bağlantıların izlenmesi
  • Yükleme bitişinin gezinme sonrası beklenmesi
Modül 2
Geçmiş ve Yenileme
  • navigate().back ile önceki sayfaya dönme
  • navigate().forward ile ileri gitme
  • navigate().refresh ile sayfanın yeniden yüklenmesi
  • Geri gezinmede form durumunun korunup korunmaması
  • Yenileme sonrası elementlerin tekrar bulunması
  • Tarayıcı geçmişiyle akış doğrulama senaryoları
Modül 3
Page Load Strategy
  • normal strateji ile tam yükleme beklemesi
  • eager strateji ile DOM hazır olunca devam
  • none strateji ile yükleme beklemeden ilerleme
  • ChromeOptions ile pageLoadStrategy ayarı
  • Stratejinin test hızına ve kararlılığına etkisi
  • Yavaş sayfalarda uygun stratejinin seçimi
Modül 4
Pencere ve Görüntü Ayarı
  • manage().window().maximize ile pencere büyütme
  • setSize ile belirli çözünürlükte test
  • Responsive davranışın pencere boyutuyla doğrulanması
  • Headless modda pencere boyutunun belirlenmesi
  • Scroll konumunun JavascriptExecutor ile ayarı
  • Elementi görünür alana getirip tıklama
Günün hedefiKatılımcı çerezleri okuyup ekler ve siler, çerezle oturumu kısa yoldan açar, StaleElement sorununu çözer ve bekleme mantığını yeniden kullanılabilir yardımcılara taşır.
Modül 1
Çerez (Cookie) Yönetimi
  • manage().getCookies ile tüm çerezlerin okunması
  • getCookieNamed ile belirli çerezin alınması
  • addCookie ile yeni çerez eklenmesi
  • deleteCookieNamed ve deleteAllCookies kullanımı
  • Çerez domain, path ve expiry alanlarının incelenmesi
  • Çerez değişiminin sayfa davranışına etkisinin testi
Modül 2
Çerezle Oturum Taşıma
  • Oturum çerezini kaydedip arayüz login'ini atlama
  • Kayıtlı çerezi yeni oturuma enjekte etme
  • Çerez ekleme sonrası sayfanın yenilenmesi
  • Giriş adımını atlayarak test süresini kısaltma
  • Çerez tabanlı oturumun test izolasyonuna katkısı
  • Token süresi dolan çerezlerin ele alınması
Modül 3
StaleElement ve Yeniden Bulma
  • StaleElementReferenceException'ın DOM yenilenme kökeni
  • Referans yerine locator ile her seferinde bulma
  • Try bloğuyla stale durumunda tekrar deneme
  • FluentWait ile stale istisnasının yok sayılması
  • DOM'u güncelleyen AJAX sonrası elementin tazelenmesi
  • PageFactory lazy proxy ile stale azaltma
Modül 4
Yeniden Kullanılabilir Bekleme Yardımcıları
  • waitForVisible gibi ortak yardımcı metotların yazımı
  • Explicit wait'in BaseTest içinde merkezileştirilmesi
  • Timeout değerlerinin yapılandırma dosyasına taşınması
  • Bekleme mantığının Page Object ile hizalanması
  • Ortak yardımcılarla kod tekrarının azaltılması
  • Kararlı çerçevede bekleme ilkelerinin standardizasyonu

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Kararsızlık teşhisi

Flaky testlerin zamanlama kökenini teşhis edip Thread.sleep yerine güvenilir bekleme stratejilerine geçebilirsiniz.

✅
Wait türü seçimi

Implicit, explicit ve fluent wait arasındaki farkı kavrayıp her senaryoda doğru bekleme türünü bilinçli seçersiniz.

✅
ExpectedConditions

Görünürlük, tıklanabilirlik ve metin gibi hazır koşulları kullanarak elementi doğru anda güvenle beklersiniz.

✅
Özel koşul yazma

ExpectedCondition arayüzü ve lambda ile AJAX bitişi gibi özel bekleme koşullarını kendiniz yazabilirsiniz.

✅
Gezinme kontrolü

get ve navigate komutlarını ayırt edip geçmiş, yenileme ve yönlendirme senaryolarını test içinde kontrollü yönetirsiniz.

✅
Yükleme stratejisi

pageLoadStrategy ayarıyla yükleme davranışını yöneterek yavaş sayfalarda hız ve kararlılık dengesini kurarsınız.

✅
Çerez ile oturum

Cookie API ile çerezleri okuyup enjekte ederek arayüz login adımını atlar ve testleri hızlandırırsınız.

✅
StaleElement çözümü

StaleElementReference sorununu yeniden bulma ve FluentWait ile çözerek DOM yenilenmelerine dayanıklı testler yazarsınız.

Kimler İçin Uygundur?

  • Selenium testleri yazan
  • ancak Thread.sleep kullanımı ve kararsız (flaky) testlerle boğuşan
  • bekleme stratejilerini
  • sayfa gezinmesini sağlam kurmak isteyen test otomasyon mühendisleri ve QA uzmanları için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Selenium testleri yazan, ancak Thread.sleep kullanımı ve kararsız testlerle boğuşan, bekleme stratejilerini ve sayfa gezinmesini sağlam kurmak isteyen test otomasyon mühendisleri ve QA uzmanları için uygundur. Temel Selenium ve Java bilgisi beklenir.
Eğitimin süresi ve formatı nedir?
Eğitim dört gün sürer ve her gün dört modülden oluşur. Bekleme ve gezinme konuları önce anlatılır, ardından kararsızlık üreten senaryolarda uygulamalı olarak çözüldüğü atölyelerle pekişir. Yüz yüze veya online yapılabilir ve kurumun projesine uyarlanabilir.
Bu eğitim diğer Selenium Deep Dive programlarından nasıl ayrılır?
Bu program bileşen otomasyonu veya çerçeve kurulumu değil, doğrudan zamanlama ve gezinme sorunlarına odaklanır. Wait türleri, ExpectedConditions, page load strategy, çerez ve StaleElement gibi konularla flaky testlerin kökünü hedef alır.
Thread.sleep neden önerilmiyor?
Thread.sleep sayfanın durumundan bağımsız sabit süre bekler; bu hem hızlı durumlarda gereksiz yavaşlık hem de yavaş durumlarda erken başarısızlık üretir. Eğitim bunun yerine koşula dayalı explicit ve fluent wait kullanımını uygulamalı gösterir.
Eğitim sonunda sertifika veriliyor mu?
Programı tamamlayan katılımcılar Digital Vizyon Akademi Katılım ve Başarı Sertifikası alır. Sertifika tamamlanan modülleri ve uygulamalı senkronizasyon atölyelerini belgeler; kurumsal gruplara özel senaryo uyarlaması yapılabilir.

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. Selenium Deep Dive: Managing Synchronization & Page Navigati Sertifika Kodu DV-2026XX00 Tarih 15.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

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

Bu Eğitimle Birlikte Tercih Edilenler

Test OtomasyonuWorking with Selenium: Selenium Web Testing (TT3610) Eğitimi
Yazılım Testi ve Kalite Eğitimleri

Working with Selenium: Selenium Web Testing (TT3610) Eğitimi

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

Selenium IDE ile kayıt-oynat, WebDriver'a geçiş, locator stratejileri, bekleme mekanizmaları ve test koşumuyla Selenium web test otomasyonu eğitimi.

Detayları Gör →
Test OtomasyonuAdvanced Selenium Frameworks: Integrating Allure Reports with Selenium Eğitimi
Yazılım Testi ve Kalite Eğitimleri

Advanced Selenium Frameworks: Integrating Allure Reports with Selenium Eğitimi

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

Selenium ve TestNG çerçevesine Allure raporlama entegrasyonu eğitimi. Adımlar, ekran görüntüleri, categories, trend ve CI entegrasyonu. Online ve kurumsal.

Detayları Gör →
Test OtomasyonuAdvanced Selenium Frameworks: Performing Logging Using Log4j Eğitimi
Yazılım Testi ve Kalite Eğitimleri

Advanced Selenium Frameworks: Performing Logging Using Log4j Eğitimi

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

Selenium çerçevesinde Log4j2 ile loglama eğitimi. Appender, layout, rolling file, WebDriver olay logu ve paralel loglama uygulamalı işlenir. Online ve kurumsal.

Detayları Gör →
Test OtomasyonuAgile Technical Tester: Advanced Techniques in Keyword-Driven Test Automation Eğitimi
Yazılım Testi ve Kalite Eğitimleri

Agile Technical Tester: Advanced Techniques in Keyword-Driven Test Automation Eğitimi

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

Robot Framework ile anahtar kelime tabanlı test otomasyonu eğitimi. Soyutlama katmanları, hibrit yaklaşım, özel kütüphaneler ve paralel koşum. Online ve kurumsa

Detayları Gör →
Test OtomasyonuAgile Technical Tester: Advanced Test Automation Strategies Eğitimi
Yazılım Testi ve Kalite Eğitimleri

Agile Technical Tester: Advanced Test Automation Strategies Eğitimi

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

Çevik ekipler için ileri test otomasyon stratejileri eğitimi. gTAA mimarisi, test piramidi, tasarım desenleri, CI/CD ve shift-left uygulamalı. Online ve kurumsa

Detayları Gör →
Test OtomasyonuAgile Technical Tester: Behavior-Driven Development (BDD) in Practice Eğitimi
Yazılım Testi ve Kalite Eğitimleri

Agile Technical Tester: Behavior-Driven Development (BDD) in Practice Eğitimi

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

Gherkin ve Cucumber ile davranış odaklı geliştirme eğitimi. Example mapping, step definition, Selenium entegrasyonu ve yaşayan dokümantasyon. Online ve kurumsal

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