ViraStack
  • Academy
  • About
  • Support
HomeSourcesContribute
ViraStack

A DX-first toolkit for frontend developers: starters, agent rules, form hooks, and a guide.

Products

  • ViraStack Start
  • ViraStack AI
  • ViraStack Mask
  • ViraStack Password
  • ViraStack Guide

Explore

  • Academy
  • About
  • Brand
  • Support

© 2026 ViraStack.

Open source · MIT

Vitest

01 / 12

Giriş

Frontend test nedir? Hangi araçlar kullanılır?

Frontend test nedir?

Frontend test, kodunuzun kullanıcı arayüzünde doğru çalıştığını otomatik olarak kontrol eder. Test, kodu çalıştırır ve sonucu beklenen sonuçla karşılaştırır. Sonuç farklıysa test başarısız olur.

Test şunları doğrular:

  • Component doğru render edilir.

  • Kullanıcı etkileşimleri doğru sonuç verir.

  • Hata, boş ve yükleniyor durumları doğru görünür.

Neden test yazılır?

  • Güvenli refactoring. Kodu değiştirdiğinizde mevcut özellikler çalışmaya devam eder.

  • Hızlı geri bildirim. Hatayı production'a çıkmadan önce bulursunuz.

  • Kritik akışların güvencesi. Sepete ekleme veya giriş yapma gibi akışlar her zaman çalışır.

  • Erişilebilirlik ipucu. Testler elemanları role ve label ile bulur. Testin bulamadığı eleman, erişilebilirlik sorununun işareti olabilir. Bu bir erişilebilirlik testinin yerini tutmaz.

Test türleri

TürNe test ederHızAraç
Unit testTek bir fonksiyon veya hookÇok hızlıVitest
Component testBir component veya küçük bir component grubuHızlıVitest + React Testing Library
E2E testGerçek tarayıcıda tüm uygulamaYavaşPlaywright

Bu rehber component test konusunu anlatır. Testing Trophy yaklaşımı, yatırımın büyük bölümünü birden fazla parçanın birlikte çalıştığı entegrasyon testlerine yapmayı önerir. Component test bu yaklaşıma uygundur.12

Tip

Component test gerçek bir tarayıcıda çalışmaz. Layout, CSS ve tarayıcıya özel davranışlar için E2E test kullanın.

Hangi araçlar kullanılır?

Bu rehberde React component'lerini Vitest ve React Testing Library ile test edeceksiniz. Her araç tek bir iş yapar.3

AraçRolNe yapar
VitestTest runnerTest dosyalarını bulur ve çalıştırır. describe, it, expect ve mock araçlarını sağlar.
jsdomTest ortamıNode.js içinde tarayıcı DOM'unu simüle eder.
React Testing LibraryRender ve sorguComponent'i render eder (render). Ekrandaki elemanları kullanıcı gibi bulur (screen).
user-eventEtkileşimTıklama ve yazma gibi kullanıcı hareketlerini simüle eder.
jest-domMatchertoBeInTheDocument ve toBeDisabled gibi DOM matcher'ları ekler.

  • jsdom gerçek bir tarayıcı değildir. Node.js içinde çalışan bir DOM simülasyonudur. happy-dom aynı işi yapan alternatif bir ortamdır. Bu rehber jsdom kullanır.4

  • Vitest Browser Mode testleri gerçek bir tarayıcıda çalıştırır.5 React için vitest-browser-react paketini kullanırsınız. Sorguları page.getByRole ile, doğrulamaları expect.element ile yazarsınız.67 Layout ve CSS davranışı test etmeniz gerekiyorsa bu modu değerlendirin.

Neyi test etmeli?

Test edin

Do

  • Kullanıcının ekranda gördüğü şeyler.

  • Kullanıcının yaptığı işlemler (tıklama, yazma, gönderme).

  • Hata, boş ve yükleniyor durumları.

Test etmeyin

Don't

  • Component'in iç state adları ve iç fonksiyonları.

  • Üçüncü taraf kütüphanelerin kendi davranışı.

  • CSS görünümü.

Testler yazılımın kullanılış biçimine ne kadar benzerse o kadar güven verir.8

Bu rehberde ne yapacaksınız?

Tüm örnekler bir e-ticaret sayfasından gelir. Küçük bir component ile başlarsınız. Her grupta sayfa büyür.

GrupTest edilen parça
BaşlangıçÜrün kartı
Component TestiÜrün listesi: yükleme, arama, kupon formu
İleri SeviyeSepet: API, Provider ve hook

Her grup bir Proje ile biter. Proje, o gruptaki konuları gerçek bir senaryoda tekrar eder.

Kendin dene

Projenizden bir ürün kartı veya benzeri bir component seçin. Kağıda şunları yazın:

  • Kullanıcının bu component'te gördüğü 2 şey.

  • Kullanıcının yapabildiği 1 işlem ve beklenen sonucu.

  • Test etmeyeceğiniz 1 şey.

Kaynaklar

  • 1ArticleKent C. Dodds: The Testing Trophy

    Statik, unit, entegrasyon ve E2E katmanları; yatırımın entegrasyona kayması.

  • 2VideoKent C. Dodds: Write tests. Not too many. Mostly integration.

    Strateji bu dersle aynıdır. Örnek araçlar Jest ve Cypress dönemine aittir.

  • 3DocsVitest: Başlangıç

    Vite tabanlı test framework'ü, watch modu ve tek seferlik çalıştırma.

  • 4DocsVitest: environment

    Varsayılan `node` ortamı; jsdom ve happy-dom tarayıcı benzeri alternatifler.

  • 5DocsVitest: Browser Mode

    Testleri gerçek tarayıcıda çalıştırma ve sağlayıcılar.

  • 6DocsVitest: Locators

    `page.getByRole` ve `vitest/browser` import'u.

  • 7DocsVitest: Component Testing

    `vitest-browser-react`, `render` ve `expect.element`.

  • 8DocsTesting Library: Temel ilkeler

    Testler yazılımın kullanımına ne kadar benzerse o kadar güven verir.

Edit this page

Last updated: October 14, 2026

Next step02. Kurulum