Bu, neden birim test yapmanız gerektiğini yanıtlar.
Aşağıdaki 3 video, javascript dilinde birim testlerini kapsamaktadır, ancak genel ilkeler çoğu dilde geçerlidir.
Birim Testi: Dakikalar Artık Daha Sonra Saati Tasarruf Edecek - Eric Mann - https://www.youtube.com/watch?v=_UmmaPe8Bzc
JS Birim Testi (çok iyi) - https://www.youtube.com/watch?v=-IYqgx8JxlU
Test Edilebilir JavaScript Yazma - https://www.youtube.com/watch?v=OzjogCFO4Zo
Şimdi sadece konuyu öğreniyorum, bu yüzden% 100 doğru olmayabilirim ve burada açıkladığımdan daha fazlası var, ancak birim testle ilgili temel anlayışım bazı test kodları yazmanızdır ( ana kod), ana kodunuzda, işlevin gerektirdiği giriş (bağımsız değişkenler) ile bir işlevi çağırır ve kod geçerli bir dönüş değeri alıp almadığını denetler. Geçerli bir değeri geri alırsa, testleri çalıştırmak için kullandığınız birim test çerçevesi yeşil bir ışık gösterir (hepsi iyi), değer geçersizse kırmızı bir ışık alırsınız ve sorunu hemen çözebilirsiniz. yeni kodu üretime bırakın, test etmeden aslında hatayı yakalayamamış olabilirsiniz.
Böylece geçerli kod için testler yazıp kodu testi geçecek şekilde yaratırsınız. Aylar sonra, sizin veya başka birinin ana kodunuzdaki işlevi değiştirmeniz gerekir, çünkü daha önce bu işlev için zaten test kodu yazmışsınızdır ve kodlayıcı işlevde bir mantık hatası eklediğinden veya tamamen bir şey döndürdüğünden test başarısız olabilir bu işlevin geri dönmesi gerekenden farklı. Yine test yapılmadan bu hatanın izlenmesi zor olabilir, çünkü muhtemelen diğer kodu da etkileyebilir ve fark edilmeyecektir.
Ayrıca, kodunuz üzerinden çalışan ve bunu yerine tarayıcı sayfasında elle sayfa yapmak yerine test eden bir bilgisayar programınız olması zaman kazandırır (javascript için birim testi). Bir web sayfasındaki bazı komut dosyaları tarafından kullanılan bir işlevi değiştirdiğinizi ve yeni amaç için iyi ve iyi çalıştığını varsayalım. Ancak, argümanların, kodunuzda düzgün çalışabilmesi için yeni değiştirilen işleve bağlı olan başka bir yerde daha başka bir fonksiyonunuz olduğunu da söyleyelim. Bu bağımlı işlev artık ilk işlevde yaptığınız değişiklikler nedeniyle çalışmayı durdurabilir, ancak bilgisayarınız tarafından otomatik olarak çalıştırılan sınamalar olmadan, gerçekten yürütülene kadar bu işlevle ilgili bir sorun olduğunu fark edemezsiniz ve sen'
Tekrarlamak gerekirse, uygulamanızı geliştirirken yürütülen testlere sahip olmak, kodlama yaparken bu tür sorunları yakalayacaktır. Testlerin yerinde olmaması, tüm uygulamanızı manuel olarak geçmeniz gerekecek ve o zaman bile hatayı tespit etmek zor olabilir, saf bir şekilde üretime gönderirsiniz ve bir süre sonra bir tür kullanıcı size bir hata raporu gönderir ( bir test çerçevesinde hata mesajlarınız kadar iyi olmayacaktır).
Konuyu ilk duyduğunuzda ve kendinize düşündüğünüzde oldukça kafa karıştırıcı, zaten kodumu test etmiyor muyum? Ve yazdığınız kod zaten "neden başka bir çerçeveye ihtiyacım var?" Diye çalışıyormuş gibi çalışıyor ... Evet, kodunuzu zaten test ediyorsunuz, ancak bir bilgisayar bunu yapmakta daha iyidir. Bir kez bir fonksiyon / kod birimi için yeterince iyi testler yazmanız yeterlidir ve geri kalanı sizin için güçlü cpu tarafından halledilir, bunun yerine bir değişiklik yaptığınızda tüm kodunuzun hala çalışıp çalışmadığını manuel olarak kontrol etmeniz gerekir. senin kodun.
Ayrıca, istemiyorsanız kodunuzu birim olarak test etmek zorunda kalmazsınız, ancak proje / kod tabanınız hata verme şansı arttıkça proje büyümeye başladığında işe yarar.