Katalon Studio Self-Healing (Kendi Kendini İyileştirme) Mekanizması

Self-Healing Mekanizması test otomasyonlarında en sık karşılaşılan problemlerden birisi olan NoElementFoundException durumunun çözümüne yönelik Katalon Studio’nun sağladığı yapıdır. Peki NoElementFoundException durumu neden kaynaklanmaktadır? Bu durum genellikle alınan test objelerinin bulunamamasından, yanlış locator strateji kullanılmasından ya da seçilen test objelerinin DOM’a yüklenmemesinden kaynaklanır. Katalon Studio “Self-Healing Mekanizması (Kendi Kendini İyileştirme Mekanizması)” adını verdiği yapı ile bu durumun üstesinden gelmiştir.

Self Healing Mekanizması’nı Katalon Studio’nun kendi kendini iyileştirme mekanizması olarak da düşünebiliriz. Uygulamaya geçmeden önce teorik olarak kendi kendini iyileştirme mekanizmasının (Self-Healing Mechanism) ne olduğunu ve nasıl çalıştığını öğrenelim.

 

Kendi Kendini İyileştirme Mekanizması (Self-Healing Mechanism) Nedir?

 

Kendi Kendini İyileştirme Mekanizması, test otomasyonu test objesini bulamadığında başka alternatifler aramaya devam eder. Bu şekilde test süreci NoElementFoundException istisnası nedeniyle başarısız olmak yerine senaryo adımlarına başarıyla devam eder. Test mühendislerinin test otomasyonlarında sıkça karşılaştıkları test objesi bulunmaması durumuna son vermeyi amaçlayan ve test senaryolarının stabilliğini arttıran bir mekanizmadır. Şu an için sadece web tabanlı otomasyonlarda kullanılmaktadır.

Katalon Studio’da Self-Healing Mekanizması’nı Aktif Hale Getirme

1) Kendi kendini iyileştirme Mekanizması (Self-Healing Mechanism), Katalon Studio’da web tabanlı proje oluşturulurken standart olarak aktif halde gelir. Bu aktifliği doğrulamak için;

 

Project > Settings > Self-Healing > Web UI > Enable Self-Healing Executionaşamalarının izlenmesi gerekir.

2) Kendi Kendini İyileştirme Mekanizması Katalon Studio’da 4 farklı test objeleri yöntemini desteklemektedir. Bunlar;

Graphical user interface, text, application, email

description automatically generated

● Xpath

● Attributes

● CSS

● Image
 

Onaylama checkboxlarını işaretleyerek ya da kaldırarak bir veya daha fazla yöntemi kullanmaya karar verebilirsiniz. Alternatif yöntemleri yukarı-aşağı oklarla önceliklendirebilirsiniz. Önceliklendirme işlemi, test otomasyonunun alternatif olarak arayacağı ilk test objesinin tipini belirlemeye yarar. Eğer bir düzenleme yapılmazsa, mekanizma varsayılan düzende alternatif test objesi belirleyecektir.

3) Kendi Kendini İyileştirme Mekanizması’nın yukarıdaki düzeni öncelikle Xpath objesini arayacaktır. Eğer Xpath ile başarı sağlarsa diğer adımlara devam edecektir. Eğer yine bulamazsa sırasıyla diğer test objesi tiplerini de kontrol edecektir. Başarı sağladığı test objesi ile diğer adımlara devam eder.

Kendi Kendini İyileştirme Mekanizması Ne Zaman Kullanılmamalıdır?

Graphical user interface, text, application, email

description automatically generatedKendi Kendini İyileştirme Mekanizması, web nesnesiyle etkileşimde bulunması gerektiğinde kullanmak için aktif hale getirilir. Doğrulama ya da karşılaştırma yöntemlerinde kullanılması uygun değildir. Bu durumda hariç tutmamız gereken metodlar için Self-Healing menüsündeki alt kısmı kullanabilirsiniz.

Kendi Kendini İyileştirme Mekanizması’nın Kullanılması

Bulunamayan test objeleri yerine alternatifleri kullanıldığı için tüm testlerimiz aşağıdaki gibi başarılı olarak sonuçlanmıştır.

Koşum sırasında eğer test objesinde problem varsa “Console” ve “Log Viewer” sekmelerinde SELF-HEALING uyarısı görülecektir.

Test sonrası Self-Healing Insights sekmesinden alternatif test objesi değişimi yönünde seçimler sunacaktır.
 

Bu sekmede; bulunamayan test objesini, yerine kullanılan test objesini, hangi tip üzerinden bulunduğunu ve elementin ekran görüntüsü görebilirsiniz. Bu alandan bulunamayan test objelerini düzenleyerek yeni test objesini belirleyebilirsiniz.

Sonuç

Kendi Kendini İyileştirme Mekanizması web nesneleri ile etkileşimi sağlayan test objelerinin bulunmaması durumunda oldukça kullanışlı bir yapıyı sağlayacaktır. Bu durum test mühendislerine test otomasyonlarını stabil yürütme imkanı tanıyacaktır. Siz de Katalon Studio otomasyon aracı ile tanışmak ve uygulamalarınıza sağladığımız benzersiz test çözümlerini konuşmak için bizimle iletişime geçebilirsiniz.