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.