Jest Nedir?

Mert DEMİR
Bilişim Hareketi

--

Jest, Facebook tarafından geliştirilen, testing frameworktür. Communitysinin geniş olmasının yanı sıra Facebook ve büyük şirketlerce kullanılması bir avantaj sayılabilir. Testlerinizin benzersiz bir global duruma sahip olmasını sağlayarak Jest, testleri paralel olarak güvenle çalıştırabilir. İşleri hızlandırmak için, Jest önce başarısız olan testleri çalıştırır ve test dosyalarının ne kadar sürdüğünü temel alarak çalışmaları yeniden düzenler.

Jest’in özellikleri :

✓ Jest’in en büyük avantajı, minimal basit kurulum ve ayarlamalara sahip olmasıdır.

✓ Testler, diğer Birim Test Kütüphanelerinde olduğu gibi BDD yöntemiyle yazıldı.

✓ Testleri __tests__ klasörü altında ya da *.spec.js ya da *.test.js dosya isimleriyle oluşturabilirsiniz.

✓ Jest Snapshot Desteğine Sahiptir.

✓ Jest Mocha ve benzeri kütüphanelere göre henüz yeni sayılabileceğinden, toolları ve destekleyen editör, IDE gibi araçları da daha azdır.

✓ Jest bazı IDE’ler tarafından henüz debuggerlar da desteklenmeyebiliyor.

✓ Entegrasyon testleri Mocha’ya göre daha zayıftır.

Jest Nasıl Kullanılır ?

Jest NPM ya da YARN kullanılarak kurulabilir:

NPM
npm install — save-dev jest
YARN
yarn add — dev jest

İlk basit testimiz için öncelikle sum.js adında bir dosya oluşturalım. Bu dosya, iki sayıyı toplayan fonksiyonu barındıracaktır.

sum.js

Yukarıda bulunan toplama fonksiyonunu modül olarak dışarıya export ettik. Fark ettiyseniz herhangi bir şekilde başka bir kütüphane ile bağlı değil.

Yazdığımız modül için sum.test.js adında bir dosya oluşturalım ve içine test kodlarımızı yazalım:

sum.test.js

Yazılan kod, bize 1 ve 2 toplamının 3’e eşit olduğunu bekleyen bir test olduğunu anlatıyor.

Bu kısımda test fonksiyonu, teste dair açıklamayı barındırırken, expect ise value yani değeri barındırır. toBe fonksiyonu ise değerin ne olması gerektiğini beklediğini bildirir. toBe tam eşitliği sağlamak için === kullanır. Eğer bir nesnenin değerini kontrol etmek isterseniz toEqual kullanmalısınız.

Testlerimizi yazdıktan sonra, package.json dosyası altına test için hangi aracı kullanacağımızı bildirmeliyiz.

package.json

Bu aşamadan sonra aşağıdaki komutlardan herhangi birisi testleri çalıştırmanıza yardımcı olacaktır:

npm t
npm test
npm run test

console’da ki çıktı

Yukarıdaki sonuç testin, geçip geçmediğini bize bildiren bir sonuç döndürecektir.

dosya yapısı

Bu makalemde kısaca Jest Framework’üne değinmek istedim. Sorularınız olursa yorum kısmına yazmaktan lütfen çekinmeyin. Bir sonraki yazımda Vue.js de yazdığımız kodları Jest kullanarak test etmeye çalışacağım.

--

--

Mert DEMİR
Bilişim Hareketi

Software Engineering => {#JavaScript #Vuejs #Nuxtjs #Jest}