Yapay Zeka Destekli Hata Ayıklamayla jsdom React Testlerinde %43 Hızlandı
Sentry mühendisleri, yapay zeka destekli hata ayıklamayla jsdom'daki üç darboğazı düzeltip React test paketini kodu değiştirmeden %43 hızlandırdı.
Sentry'nin HackWeek etkinliğinde bir mühendis, tek bir test satırını veya sorguyu değiştirmeden yavaş bir React Testing Library dosyasını hızlandırmak için GPT-5.6 tabanlı Codex'i kullandı. getByRole'u daha ucuz sorgularla değiştirmek yerine, erişilebilirlik farkındalıklı eşleştirmenin doğası gereği daha maliyetli olduğu kabul edilip altyapıdaki jsdom ve DOMSelector kütüphanelerine odaklanıldı.
Profilleme üç gerçek darboğaz ortaya çıkardı: jsdom'un her input için etiketleri bulmak amacıyla tüm belgeyi tekrar tekrar taraması, DOMSelector'daki bozuk bir hızlı-yol kontrolü (iç uygulama nesnesiyle genel belge sarmalayıcısını === ile karşılaştırdığı için her zaman yavaş eşleştiriciye düşüyordu) ve olay gönderiminin her adımda aynı olay yolunu yeniden taraması. Yalnızca etiket aramasını düzeltmek yaklaşık 91 kat hızlanma sağladı, seçici düzeltmesi eşleştirme süresini %89'a kadar azalttı, olay yolu düzeltmesi ise verimi %12-36 artırdı.
Bu üç düzeltme birlikte, gerçek bir Sentry test dosyasını yamasız jsdom 30 kurulumuna göre %43, Sentry'nin mevcut jsdom 26 temel test çalıştırmasına göre ise %21 daha hızlı hale getirdi; test kodu ve sorgular tamamen aynı kaldı. İki değişiklik jsdom'a birleştirildi ama henüz yayınlanmadı, seçici düzeltmesi ise hâlâ açık bir pull request. Mühendisler için çıkarım: testleri yeniden yazmak yerine jsdom'a yapılan kütüphane düzeyindeki düzeltmeler, büyük ve erişilebilirlik odaklı test paketlerini anlamlı ölçüde hızlandırabilir.
Bu sentez, kaynağından yapay zeka tarafından üretildi; insan editör ya da elle onay adımı yoktur. Nasıl çalışıyoruz