JS Testing

Node ile Unit Test ve API Test Nasıl Yapılır ?

Onur Dayıbaşı
Cloud And Servers
Published in
3 min readJan 30, 2017

--

Unit Test yazma ihtiyacı geliştiricilerde farklı farklı ortaya çıkar.

Test Driven giden bir geliştirici için ilk önce kodu yazmadan yazacağı testi, hangi istinai durumları test edeceğini düşünerek bu işe başlar buna göre testini yazar, testi hata verir ve testi geçirecek kodunu yazar.

Hataları Tespit Etmesi Zorlaşmaya başlayan geliştirici için, ilk önce kodunu geliştirmiştir, debugging, console.log vb yöntemler ile kodunu test ediyordur ama test işlemi giderek çok zamanını alıyor ve hata çok çıkıyor veya değişiklikleri yönetemiyor.

Süreçler için Zorunlu Olarak Yazılan Testler, bazı şirket kalite gereksinimlerinden dolayı zadece bazı Sertifika vb gereksinimlerle geliştiricilerin Code Covorage vb.. göstermelik testler yazması. Genelde boşu boşuna yazılır.

Node.JS için test frameworkleri aradığımda aşağıdaki linkteki örnek Mocha, Chai ile nasıl Unit Test ve Functional Test yapılacağını anlatmış. Kendi durumlarınız bundan çok çok daha kompleks olsada başlangıç için oldukça iyi bir örnek.

Mocha

Mocha Unit Testleri yazmanızı ve koşmanızı sağlayan bir araç.. Mocha sisteme ekledikten sonra package.json aşağıdaki scripti ekleyerek npm test konsoldan çalıştırarak tüm Unit testlerinizin koşmasını sağlayabilirsiniz.

Chai

Chai ise Assertion kütüphanesi yani Expect, Assert, Should ile fonksiyonlardan dönen değerleri, beklentiler ile karşılaştıran Node.js kütüphanesi.

Örnek Unit Test

Describe Unit Testlerinizi gruplamak için başlık olarak düşünebilirsiniz. it ise testinizi yazdığınız kısım

Örnek API Test

REST apinizi test etmek istiyorsanız. HTTPRequest simule edeceğiniz request kütüphanesini kullanabilirsiniz. Bu sırada test edeceğiniz uygulamanızın ayakta olması gerekir. Burada yaptığımız test aslında fonksiyonal testtir. Uygulamanızın API → Girdiyi ve buradan çıkan Çıktıyı assert ile kontrol edersiniz. Bu aşamada Belleğe, Diski, Network erişmiş ve birçok mantığı içerde çalıştırmış olabilirsiniz.

Ama basit bir şekilde tüm API’nizin testini hazırlayabilirsiniz. :)

Okumaya Devam Et 😃

Bu yazının devamı veya yazı grubundaki diğer yazılara erişmek için bu linke tıklayabilirsiniz.

--

--