
S
Sevinc QasımovaMüəllif
sevinc.gasimova@example.comTest-Driven Development (TDD) və Müasir Test Strategiyaları
Kodu yazmazdan əvvəl testi yazmaq niyə layihənin arxitekturasını daha dözümlü, çevik və güvənli edir?
Bir çox proqramçı üçün test yazmaq "vaxt itkisi" kimi görünür: "Mən kodu onsuz da brauzerdə əllə klikləyib yoxladım, işləyir də!".
Lakin layihə böyüdükcə, cəmi 1 sətir kodu dəyişəndə saytın başqa bir küncündə ödəniş sisteminin sıradan çıxmayacağına kim zəmanət verə bilər?
Məhz avtomatlaşdırılmış testlər və xüsusilə TDD bu qorxunu aradan qaldırır.
📌 1. TDD Dövrəsi: Red - Green - Refactor
TDD-nin fəlsəfəsi üç sadə addımdan ibarətdir:
1. Qırmızı (Red): Əvvəlcə həyata keçirmək istədiyiniz funksiyanın testini yazırsınız. Funksiya hələ mövcud olmadığı üçün test təbii olaraq uğursuz olur (Qırmızı yanır).
2. Yaşıl (Green): Yalnız və yalnız həmin testi keçəcək ən sadə, minimal kodu yazırsınız. Test uğurla keçir (Yaşıl yanır).
3. Refaktor (Refactor): İndi artıq kodun arxasında etibarlı test qalxanı var. Kodu təmizləyir, dəyişən adlarını səliqəyə salır, performansı artırırsınız. Əgər nəsə xarab olsa, test dərhal qırmızıya dönüb sizə xəbər verəcək.
📌 2. Test Piramidası:
- Unit Testlər (Vahid testlər): Kiçik funksiyaları (məsələn, bizim 'generateSlug' köməkçisi) təcrid olunmuş şəkildə yoxlayır. Saniyədə minlərlə vahid test işləyə bilər.
- Integration Testlər (İnteqrasiya): İki fərqli modulun (məsələn, Prisma ilə Server Action-ın) bir yerdə düzgün işlədiyini təsdiqləyir.
- E2E Testlər (End-to-End - Playwright): Həqiqi brauzeri açıb istifadəçi kimi qeydiyyatdan keçir, düyməyə basır və real axını yoxlayır.
Nəticə: Testlə əhatə olunmuş layihədə cümə günü axşam saat 18:00-da belə heç nədən qorxmadan kodu canlıya buraxmaq mümkündür!
←Bütün yazılara qayıtKateqoriya: Best Practices