E2E testlerinin her arayüz değişikliğinden sonra bozulmasını nasıl önleyebilirim?
E2E testleri, öğeleri bir sınıfa, kimliğe, metin parçasına veya konuma göre buldukları için arayüz değişikliklerinden sonra bozulur; yeniden tasarımda değişenler de tam olarak bunlardır. Verdict System LLC tarafından geliştirilen Nexus Studio bunu üç adımda ele alır: yeni bir konumlandırıcı önerir ve testi değiştirmeden önce onay ister, onarılan bir seçici sayesinde başarılı olan çalıştırmayı sorunsuz bir geçiş yerine AUTO_RECOVER olarak işaretler ve önce düzeltebilmeniz için zayıf konumlandırıcıları listeler.
Nexus Studio ekibi, Verdict System LLC tarafından. 7 Ekim 2026.
Arayüz değiştiğinde Playwright ve Selenium testleri neden başarısız olur?
Konumlandırıcı, bir testin bir öğeyi bulmak için kullandığı adrestir. Bu adres, derleme sırasında oluşturulan bir sınıf, sayfadaki konum veya bir etiketin metni gibi öğenin işleviyle ilgisi olmayan bir şeye bağlıysa sayfada yapılan bir değişiklik adresi geçersiz kılar ve uygulama hâlâ çalışsa bile test o satırda başarısız olur.
Asıl maliyet, tek bir başarısızlık değildir. Ekibin her sürümden sonra yeniden başarısız çalıştırmaları incelemeye, ilgili satırı bulmaya, yeni bir konumlandırıcı bulmaya ve dosyayı düzenlemeye harcadığı zamandır.
Testleri sessizce düzelten kendi kendini onarma özelliğinin sorunu nedir?
Bozuk bir konumlandırıcıyı kimseye haber vermeden değiştiren bir araç, test paketini başarılı durumda tutar ama değişikliği de gizler. Test artık yazarının seçmediği bir şeye tıklar ve bu değişikliği kimse incelememiştir. Yeni eşleşme yanlış öğeyse test, yanlış şeyi denetlediği hâlde başarılı olabilir.
Nexus Studio tam tersi bir ilke üzerine kuruludur: bilginiz dışında hiçbir şey onarılmaz.
Nexus Studio bozuk bir konumlandırıcıyı nasıl onarır?
- Kendi kendini onarma özelliği varsayılan Öner ayarındayken bir test başarısız olduğunda Studio arka planda bir tarayıcı açar, testi başarısız olan satıra kadar yeniden yürütür ve sayfayı okur. Başarısızlık ayrıntılarını açtığınızda adaylar hazırdır. Bu işlemde yapay zekâ kullanılmaz ve test başarısız durumda kalır.
- Başarısız olan satırın kenar boşluğundaki Satırı onar seçeneği, yalnızca o adımı yeniden kaydetmenizi veya seçiciyi adaylardan biriyle değiştirmenizi sağlar. Adaylar en güçlü olan başta olacak şekilde sıralanır; XPath en sonda yer alır.
- Değişiklik, düzenleyiciye kaydedilmemiş olarak aktarılır. Kaydetmeniz, onay verdiğiniz anlamına gelir.
- Hangi adayı seçeceğinizi yapay zekânıza da sorabilirsiniz. Yapay zekâ adayları yeniden sıralayabilir, ancak yeni aday ekleyemez; dosyanın önceki sürümü de dosyanın zaman çizelgesinde kalır.
Bir testin onarılmış bir seçiciyle başarılı olması ne anlama gelir?
Sonuç AUTO_RECOVER olur: çalıştırma başarılıdır, ancak kendi kendini onarma özelliğinin o testteki bir seçiciyi değiştirmesi gerekmiştir. Bu durum hiçbir zaman sorunsuz geçiş anlamına gelen SECURE olarak bildirilmez. Yazarın yazdığı konumlandırıcı artık çalışmıyordur ve sayfadaki bir sonraki değişiklik test paketini gerçekten bozacaktır; bu nedenle birisi özgün seçiciyi düzeltene kadar bu çekince raporda ve Geçmiş bölümünde görünür kalır.
AUTO_RECOVER, başarılı sayılan yedi sonuçtan biridir; dolayısıyla bir CI işi bu sonuçta 0 çıkış kodunu döndürür. Çekince, başarısız bir derleme olarak değil, raporda gösterilir. Denetimlerin tam sırası Nexus Studio 14 test sonucuna nasıl karar verir bölümündedir.
Zayıf seçicileri bozulmadan önce nasıl bulabilirim?
- Konumlandırıcı sağlığı, açık testteki zayıf konumlandırıcıları her birinin satırıyla birlikte listeler ve Satırı onar seçeneğiyle aynı iletişim kutusu üzerinden onarır.
- Seçici Haritaları bir sayfayı yapay zekâ kullanmadan tarar, her seçiciyi YÜKSEK, ORTA veya DÜŞÜK olarak derecelendirir ve haritayı diskinizde saklar.
- Yapay zekânın yazdığı her testin geçmesi gereken yedi denetimden oluşan Vet, testte kırılgan konumlandırıcı bulunmaması kuralını da içerir.
Kaydedici hangi konumlandırıcıları seçer?
Nexus Recorder, yapay zekâ kullanmadan tıkladığınız öğeleri test koduna dönüştürür. Bir test kimliği özniteliği kullanabilir: JavaScript kaydı için data-testid seçtiğinizde hem data-testid hem de data-qa özniteliğini okur. Python ve Selenium kayıtları, çalıştırıcılarının kullandığı tek öznitelik adını korur. Bu özniteliklere göre yazılan seçiciler sağlam olarak değerlendirilirken derleme sırasında oluşturulan bir sınıf adı, derin bir CSS zinciri ve tek başına bir etiket adı kırılgan olarak değerlendirilir.
Test, standart bir Playwright veya Selenium dosyası olarak kalır mı?
Evet. Studio tarafından yazılan veya içe aktarılan her test, ekibinizin zaten bildiği çerçeve kodudur: bir Playwright Test dosyası (JavaScript, TypeScript, Python veya C#) ya da Selenium (JavaScript, Python, Java veya C#). Onarım, bu dosyanın bir satırını düzenler; dolayısıyla Studio kullanmayı bırakırsanız dönüştürmeniz gereken özel bir biçim yoktur.
Sınırlar
- Öner modundaki kendi kendini onarma özelliği, tek başına hiçbir şeyi düzeltmez. Her onarımı yine bir kişi onaylar; bu nedenle büyük bir arayüz değişikliği hâlâ inceleme zamanı gerektirir.
- Başarısızlık sonrasındaki otomatik okuma işlemi, makinede boş bellek gerektirir. Yeterli bellek yoksa işlem başlamaz; yine de adayları elle isteyebilirsiniz.
- Konumlandırıcı sağlığı dosyayı satır satır okur; bu nedenle birden çok satıra bölünmüş bir konumlandırıcı algılanmaz.
- Hâlâ çalışan zayıf bir konumlandırıcı, başarısızlık sayılmaz. Konumlandırıcı sağlığı sizi bu konuda bilgilendirir, ancak hiçbir şey sizi onu değiştirmeye zorlamaz.
Nasıl çalıştığını nerede görebilirim?
Studio turu, Repair satırını ve öğe bulucuların durumunu ekranda gösterir, sonuç kılavuzu AUTO_RECOVER sonucunu diğer 13 sonuçla birlikte açıklar ve 30 günlük deneme sürümü aynı motoru kendi testlerinizde çalıştırır.