Test, herhangi bir uygulama için temel bir unsurdur. Node.js için, Test için kullanılabilen çerçeve Jasmine olarak adlandırılır. 2000 yılının başlarında, JsUnit adı verilen JavaScript uygulamalarını test etmek için bir çerçeve vardı. Daha sonra bu çerçeve yükseltildi ve şimdi Jasmine olarak biliniyor.
Jasmine, modern web uygulamalarını geliştirirken ve dağıtırken oldukça önemli bir uygulama haline gelen otomatik Birim Testine yardımcı olur.
Bu eğitimde, yasemin ile ortam kurulumunuzu nasıl yapacağınızı ve ilk Node.js uygulamanızı yasemin ile nasıl test etmeye başlayabileceğinizi öğreneceksiniz.
Bu eğitimde öğreneceksiniz-
-
Node.js uygulamalarını test etmek için Jasmine'e genel bakış
-
Jasmine, Node.js uygulamalarını test etmek için nasıl kullanılır?
Node.js uygulamalarını test etmek için Jasmine'e genel bakış
Jasmine, JavaScript için Davranış Odaklı Geliştirme (BDD) test çerçevesidir. O mu değil tarayıcılar, DOM, veya herhangi bir JavaScript çerçevesinde güvenmektedir. Bu nedenle, web siteleri, Node.js projeleri veya JavaScript'in çalışabileceği herhangi bir yer için uygundur. Jasmine'i kullanmaya başlamak için önce gerekli Jasmine modüllerini indirip kurmanız gerekir.
Daha sonra, ortamınızı başlatmanız ve yasemin yapılandırma dosyasını incelemeniz gerekir. Aşağıdaki adımlar Jasmine'i ortamınızda nasıl kuracağınızı gösterir.
Adım 1) NPM Modüllerini Takma
Yasemin çerçevesini bir Node uygulamasından kullanmak için yasemin modülünü yüklemeniz gerekir. Yasemin düğüm modülünü kurmak için aşağıdaki komutu çalıştırın.
npm yasemin düğümünü yükle
Adım 2) Projeyi başlatmak - Bunu yaparak, Jasmine sizin için bir özellik dizini ve konfigürasyon jsonu oluşturur. Spec dizini, tüm test dosyalarınızı saklamak için kullanılır. Bunu yaparak yasemin tüm testlerinizin nerede olduğunu bilecek ve daha sonra bunları buna göre uygulayabilecektir. JSON dosyası, yasemin hakkında belirli yapılandırma bilgilerini depolamak için kullanılır.
Yasemin ortamını başlatmak için aşağıdaki komutu çalıştırın
yasemin init
Adım 3) Yapılandırma dosyanızı inceleyin. Yapılandırma dosyası spec / support klasöründe yasemin.json olarak saklanacaktır. Bu dosya, Jasmine çalıştırıcısının dahil etmesini istediğiniz kaynak dosyaları ve özellik dosyalarını numaralandırır.
Aşağıdaki ekran görüntüsü yasemin için package.json dosyasının tipik bir örneğini göstermektedir.
- Spec dizininin burada belirtildiğini unutmayın. Daha önce belirtildiği gibi, yasemin çalıştığında, bu dizindeki tüm testleri arar.
- Unutulmaması gereken bir sonraki şey spec_files parametresidir - Bu, oluşturulan test dosyalarının 'spec' anahtar kelimesinin eklenmesi gerektiğini belirtir.
Jasmine, Node.js uygulamalarını test etmek için nasıl kullanılır?
Jasmine'i Node.js uygulamalarını test etmek üzere kullanmak için bir dizi adımın izlenmesi gerekir.
Aşağıdaki örneğimizde, test edilmesi gereken 2 sayıyı ekleyen bir modül tanımlayacağız. Daha sonra test koduyla ayrı bir kod dosyası tanımlayacağız ve ardından Add işlevini buna göre test etmek için yasemin kullanacağız.
Adım 1) Test edilmesi gereken kodu tanımlayın. 2 sayı ekleyecek ve sonucu döndürecek bir fonksiyon tanımlayacağız. Bu kod, "Add.js" adlı bir dosyaya yazılacaktır.
var exports=module.exports={};exports.AddNumber=function(a,b){return a+b;};
Kod Açıklaması:
- "Dışa aktarım" anahtar sözcüğü, bu dosyada tanımlanan işlevselliğe gerçekten başka dosyalar tarafından erişilebilmesini sağlamak için kullanılır.
- Daha sonra 'AddNumber' adında bir işlev tanımlıyoruz. Bu fonksiyon, a ve b olmak üzere 2 parametre alacak şekilde tanımlanmıştır. İşlev, işlevi diğer uygulama modülleri tarafından erişilebilen genel bir işlev yapmak için "dışa aktarım" modülüne eklenir.
- Sonunda fonksiyonumuzun parametrelerin katma değerini döndürmesini sağlıyoruz.
Adım 2) Ardından, Add.js dosyasındaki "Ekle" işlevimizi test etmek için kullanılacak yasemin test kodumuzu tanımlamamız gerekiyor. Aşağıdaki kodun, add-spec.js adlı bir dosyaya yerleştirilmesi gerekir.
Not : - 'spec' kelimesinin yasemin tarafından algılanabilmesi için test dosyasına eklenmesi gerekir.
Kod Açıklaması:
var app=require("… /Add.js");describe("Addition",function(){it("The function should add 2 numbers",function() {var value=app.AddNumber(5,6);expect(value).toBe(11);});});
- Bu dosyada 'AddNumber' işlevini test edebilmemiz için öncelikle Add.js dosyamızı eklememiz gerekir.
- Şimdi test modülümüzü oluşturuyoruz. Test modülünün ilk kısmı, temelde testimize bir isim veren bir yöntemi açıklamaktır. Bu durumda testimizin adı "Ekleme" dir.
- Sonraki bit, 'it' yöntemini kullanarak testimiz için bir açıklama vermektir.
- Şimdi Addnumber yöntemimizi çağırıyoruz ve 2 parametre 5 ve 6 gönderiyoruz. Bu, App.js dosyasındaki Addnumber yöntemimize aktarılacaktır. Dönüş değeri daha sonra değer adı verilen bir değişkende saklanır.
- Son adım, karşılaştırmayı veya gerçek testimizi yapmaktır. Addnumber işlevi tarafından döndürülen değerin 11 olmasını beklediğimizden, bunu wait (value) .toBe (beklenen değer) yöntemini kullanarak tanımlarız.
Çıktı
- Testi çalıştırmak için yasemin komutunu çalıştırmak gerekiyor.
- Aşağıdaki ekran görüntüsü, jasmine komutu çalıştırıldıktan sonra, add-spec.js adlı bir testin var olduğunu tespit edeceğini ve bu testi buna göre yürüteceğini göstermektedir. Testte herhangi bir hata varsa buna göre gösterilecektir.
Özet
- Bir Node.js uygulamasını test etmek için önce yasemin çerçevesinin yüklenmesi gerekir. Bu, Düğüm paket yöneticisi kullanılarak yapılır.
- Test kodunun ayrı bir dosyaya yazılması gerekir ve dosya adına 'spec' sözcüğü eklenmelidir. Yalnızca bu yapılırsa yasemin bir dosyanın çalıştırılması gerektiğini algılayabilir.
- Testi çalıştırmak için yasemin komutunu uygulamanız gerekir. Bu, 'spec' kelimesi eklenmiş olan tüm dosyaları bulur ve dosyayı buna göre çalıştırır.