İçeriğe geç

Web okuyucu browser testleri

Geliştirme · 0.0.0-dev

Yayın

Doküman
0.0.0-dev
Uygulama
0.0.0

Bu sayfa

Uygulama
0.0.0

Web browser paketi, üretim Next.js okuyucusunu gerçek API istemcisi ve gerçek reconstruction katmanlarıyla çalıştırır. Dış servise bağlanmaz; yalnız 127.0.0.1 üzerinde çalışan kapalı bir fixture API kullanır.

  • Latin ve Osmanlıca metin, fixture içindeki beklenen değerle karakter karakter aynı kalır.
  • Latin metin ltr, Osmanlıca metin rtl yönünde sunulur.
  • Açık ve koyu tema görsel olarak ayrışır; aynı durumun aynı Chromium oturumundaki reload görüntüsü kararlı kalır.
  • Ana terkip ile iki lexical child sekmesi aynı panelde görünür.
  • 390x844 mobil viewport’ta doküman ve terim paneli yatay taşmaz.
  • Uzun chapter son işaretine kadar görüntülenir; metnin alt bölümü sessizce kesilemez.
  • İngilizce okuyucu mapped, unresolved_candidate, source_fallback ve target_only durumlarını ayırır.
  • Klavye, WCAG ve assistive-technology semantics aynı fixture üzerinde ayrı erişilebilirlik senaryolarıyla doğrulanır.
  • İlk chapter istek bileşimi, response body bütçesi ve preloaded/on-demand sorgu sınırı ölçülür.
  • Eksik lügat anlamı, kabul edilmemiş alignment adayı ve Osmanlıca projection yokluğu açık durumlar olarak gösterilir.
  • Reader kontrolleri ve annotation panelleri doğru kullanıcı rehberi route’larına bağlanır.

Fixture iki stable chapter UUID’sini yalnız senaryo anchor’ı olarak kullanır. İçindeki kısa metin, uzun metin, Osmanlıca gösterim ve İngilizce alignment kayıtları sentetik test verisidir; canonical corpus, production DB veya legacy ekran çıktısı değildir.

Legacy golden kayıtları hangi risklerin korunacağını belirler: varsayılan Latin görünüm, compound paneli, mobil görünüm, Osmanlıca koyu tema ve uzun chapter sonu. Münderecat tasarımı veya fixture metni legacy uygulamadan kopyalanmaz.

PNG dosyaları taşınabilir bir font rasterizasyon hash’i olarak kullanılmaz. Test bunun yerine viewport boyutunu, boş olmayan piksel varyansını, aynı çalıştırmadaki kararlılığı, temalar arası piksel farkını ve DOM geometrisini doğrular. Böylece macOS ve Linux font motorları arasındaki meşru farklar kalıcı false positive üretmez.

Chromium’u bir kez kurun:

Terminal window
make web-browser-install

Odaklı browser paketini çalıştırın:

Terminal window
make web-browser-check

Fixture contract testi normal web testlerine dahildir:

Terminal window
pnpm --filter @munderecat/web test

CI yalnız web browser paketini ayrı bir işte çalıştırır. Hata halinde trace, ekran görüntüsü ve Playwright çıktısı reports/web-playwright/ artifact’ı olarak saklanır.

F8-014, aynı browser harness’ına axe A/AA denetimi, klavye akışları ve erişilebilirlik ağacı assertion’ları ekler. Kapsam ve geliştirme komutları için web erişilebilirlik denetimine bakın.

F8-015 aynı loopback harness üzerinde altı çağrılık ilk yükü, kısa/uzun fixture payload’ını ve kullanıcı etkileşimlerinin sorgu davranışını sınırlar. DB bütçe otoritesi ile İngilizce katalog dağılımı için web okuyucu performans bütçesine bakın.

F8-016 eksik içeriği, kabul edilmemiş kanıtı ve teknik yükleme hatasını birbirinden ayırır. UI anlamları ve sentetik senaryolar için web okuyucu durumlarına bakın.

F8-017 ayrı deploy edilen docs origin’ini ve yedi reader topic route’unu tek sözleşmede toplar. Link kapsamı ve production yapılandırması için web okuyucu dokümantasyon bağlantılarına bakın.

Bu paket canlı Supabase, corpus rebuild, Ottoman pipeline veya DB migration çalıştırmaz. Canonical metnin kaynağı yine corpus doğrulaması ve exact reconstructor’lardır; browser denetimleri onların yerine geçmez. Pinned Chromium sonucu bütün browser ve proprietary screen-reader birleşimleri için evrensel bir sertifika sayılmaz.