Öğrenme Testi'ne hoş geldiniz!

Bu kurs, web testlerine giriş ve bunları keşfetme amaçlı olarak hazırlanmıştır.

Bu kursta, aşağıdakiler hakkında bilgi edineceksiniz:

  • Testle ilgili temel bilgiler
  • Otomatik ve manuel test karşılaştırması
  • Testlerinizi nerede ve nasıl yapabilirsiniz?
  • En iyi uygulamalar
  • Neyin test edileceği, kimin sorumlu olduğu ve bir yöntemi test etmenin hedef olarak değil, amaca yönelik olarak nasıl değerlendirileceği de dahil olmak üzere test felsefesi.

Kursta, öğrenmeniz için kısa ve pratik bir örnek kod da bulunmaktadır.

Kursun kapsamı, Node.js gibi bir ortamda çalıştırılan, ön uçtaki JavaScript ve belge modelinin yanı sıra arka uçta kütüphane testleri içerir. Test konusunda herhangi bir arka plan bilgisi bulunmadığı varsayılır, ancak JavaScript'i temel almanız ve Node.js veya benzeri bir konuda deneyim sahibi olmanız gerekir. Hem acemi hem de deneyimli geliştiriciler için uygundur.

Çoğu test çerçevesi ve aracı ortak bir dil paylaştığından, Öğrenim Testi, test konusunda genel bir yaklaşım benimser. Spesifik olmak önemli olduğunda popülerliği giderek artan Vitest testini kullanacağız ve React veya Lit kullanarak web'de yazılan bileşenlerin nasıl test edileceğini göstereceğiz. Bu seçenek hakkında daha fazla bilgi için ek bölümüne bakın.

Bu kursu başından sonuna kadar izleyebilirsiniz ancak belirli konular için referans olarak da kullanabilirsiniz. Kurs, ilgili olduğu durumlarda kaynaklara giden bağlantılar sunar.

Öğrenecekleriniz:

Test etmeye başlama

Test nedir?

Bu, JavaScript'te test yapmanın pratik örneklerini de kapsayan üst düzey bir teste giriştir. Ayrıca her testin ölçeği hakkında bilgi verir.

Testlerin çalıştırıldığı yer

Testler, üretken olmanıza ve yazılımları verimli bir şekilde yazmanıza yardımcı olabilir. Testleri, bir komut satırı kullanarak manuel olarak çalıştırmak mümkün olsa da otomatik bir sürecin veya derleme sisteminin parçası olarak da çalıştırabilirsiniz.

Test ortamı

Düğüm gibi çalışma zamanı araçları genel amaçlı kodlara yöneliktir. Tarayıcı için test kodu ise emüle edilmiş bir ortamda veya tarayıcı testi için tasarlanmış bir çerçeve kullanılarak çalıştırılabilir.

Otomatik test türleri

Çoğunlukla ölçeklerine karşılık gelen test türlerinin yaygın kategorizasyonları hakkında bilgi edinin. Daha da önemlisi, test türlerinin kesin bir tanımı yoktur ve ihtiyaçlarınıza göre değişir.

Neleri test etmeniz gerekir ve yaklaşımınız

Titiz testler uygulamak üzere kod tabanınızın en önemli parçalarını belirlemek zor bir karar olabilir. Bu modülde, test etmenin bir amaca hizmet etmesi ve kodunuzu test için nasıl değerlendireceğiniz açıklanmaktadır.

Uygulamada bileşen testi

Bu uygulamalı modülde, ideal olmayan bir React bileşenini nasıl test edeceğinizi öğreneceksiniz. Bu, Vitest'i üç farklı örnek üzerinden kullanır: fetch() ile yapılan ağ trafiğine müdahale etme, harici bir bağımlılıkla alay etme ve yalnızca test için özel bir kod parçası sağlamak üzere React'ın Context politikasını kullanma.

Statik analiz

Test için sağlam yaklaşımlar olmasa da TypeScript ve ESLint gibi araçları kullanmak bir tür otomatik kontrol sağlayabilir. Bu modülde bu alternatif araçlar anlatılmıştır.

Onaylamalar ve diğer temel öğeler

Meslekte kullanılan araçlar

test() ve assert dahil olmak üzere çoğu test kitaplığı veya çerçevesinde ortak olan ve JavaScript'te yazdığınız her testin temelini oluşturacak temel öğeler hakkında bilgi edinin.

Çok yakında

  • Sık karşılaşılan test tuzaklarından kaçınma
  • Test ikilileri
  • Test kitaplıkları ve yardımcı programlar
  • Test çerçevesine karar verme

Bu bölümün geri kalanında, test çerçeveleri ve kitaplıklar, bunların nasıl kullanılması gerektiği ve hangi araçların kullanılacağına ve hangi araçların kullanılacağına nasıl karar verileceği ile ilgili daha fazla sayfa yer alacaktır.

Yakında: Problem odaklı testler

Web testiyle ilgili sık karşılaşılan bir dizi zorluğa yaklaşmaya yönelik kalıplar öğreneceksiniz.

Çok yakında: Uygulamada otomatik test

Bu, Next.js ile oluşturulmuş bir e-ticaret sitesinin nasıl test edileceğini gösteren pratik bir bölümdür. Ayrıca, inceleyip kendi kendinize öğrenebileceğiniz kodu da içerir. Bileşenlerini nasıl test edeceğinizi, ödeme, test için dahil olmak üzere harici hizmetleriyle nasıl çalışacağınızı ve isteğe bağlı giriş sayfası olan bir site için uçtan uca testlerin nasıl oluşturulacağını öğreneceksiniz.

Yakında: Test felsefesi

Test etmek mühendislik açısından zorlu bir süreç olabilir, ancak neyin test edileceğini, kimin sorumlu olduğunu ve en iyi uygulamaları bilmek de geliştirme ekiplerini zorlayabilir.

Çok yakında: Test edilebilir kod yazma

Bu kursta, kodun mevcut haliyle test edilmesiyle ilgili yol gösterici bilgiler sağlanmaktadır ancak ekibiniz, kodunuzun test edilmesini kolaylaştırmak için çeşitli kalıplar benimseyebilir. Bu bölümde bazı yaklaşımlara bakacağız.