TEST DRIVEN DEVELOPMENT
Perfekcyjny kod nie jest dziełem przypadku
Wyobraź sobie, że każda linijka Twojego kodu po prostu działa. I to za pierwszym razem!
Test Driven Development na to pozwala! Zobacz, jak z tego korzystać!
Dołącz teraz – odbierz dodatkowe, ekskluzywne materiały i specjalne rabaty na premierę!
Dzięki!
Poinformuję Cię niezwłocznie o rozpoczęciu kursu!
Test Driven Development to nie są testy!
DYSCYPLINA TDDKojarzysz ten stan?
Klient zasypuje Cię mailami: “Zepsuliście aplikację! Brak profesjonalizmu! Wczoraj działało, a dzisiaj już nie!”. A przecież funkcjonalności, które wprowadziłeś, nie mają żadnego związku z tym co wczoraj zrobiłeś! Tak czy inaczej, kod rozsypał się jak kostki domina!
Nie chcesz tego! Jesteś ambitny, trzymasz się zasad SOLIDa, na co dzień używasz wzorców projektowych. Jesteś PRO, więc pytania w stylu: “Czy da się to w końcu naprawić?” są totalnie nie na miejscu! Jednak… Coś tu nadal nie działa tak, jak powinno…
Słyszałeś o tych szczęściarzach – programistach, którzy mają czas i olbrzymie budżety na testy, a nawet zespoły klikających za nich w “kąkuter” testerów. Tymczasem w Twoim projekcie budżetu brak, a priorytetem jest dowiezienie ficzera. Może poprawki przyjdą później… Ale zdradzę Ci pewien sekret: “później” nigdy nie nadejdzie…
Brzmi znajomo? 🤦
TDD to coś więcej niż pisanie testów. To podejście do programowania, które uczy, jak pisać kod skoncentrowany na domenie biznesowej, jak efektywnie łączyć moduły i jak dostarczać realną wartość – zamiast tworzyć kolejnego potworka, wyglądającego jak ten, wygenerowany chatem GPT.
Wyobraź sobie świat, w którym:
👉 Twoje oprogramowanie działa zawsze stabilnie.
👉 Piszesz kod zoptymalizowany pod konkretne, biznesowe wymagania!
👉 Refaktoryzacja jest codziennym standardem.
👉 Testy są pisane jeszcze przed napisaniem właściwego kodu!
👉 A utrzymywanie kodu, staje się łatwiejsze niż kiedykolwiek!
Brzmi jak bajka? To dorzucę coś jeszcze – TDD nie tylko nie wydłuża pracy, ale pozwala też działać szybciej i mądrzej. Bez wielogodzinnego debugowania, bez frustracji, i bez szukania tej jednej, drobnej usterki, która właśnie wywaliła wam całą prodkcję.
Każdy z nas marzy o spokojnych piątkach po deployu, o reputacji niezawodnego developera i o tym, by czerpać prawdziwą frajdę z programowania. Dlatego jedyną słuszną odpowiedzią jest Test Driven Development! 🎯
Kto za tym stoi?
TDD PROSTE JAK NIGDY!Nazywam się Marcin Lenkowski i jest całkiem spora szansa, że znasz mnie już z wcześniejszych kursów, instagrama czy kanału YouTube.
Jeśli miałbym powiedzieć co najbardziej zmieniło moje podejście do programowania, to było to zdecydowanie zastosowanie Test Driven Development w codziennej pracy.
Pisanie testów może na początku wydawać się “trudne”, ale prawda jest taka, że utrzymywanie oprogramowania bez testów – to już prawdziwa jazda bez trzymanki!
Projekt Test Driven Development to największy kurs, jaki dotąd zrobiłem. Chcę dać Ci narzędzia, które nie tylko pozwolą Ci pracować z nowym greenfieldowym kodem, ale też źle pachnącym legacy!
Poza samym TDD podotykamy też programowania domenowego, odkryjemy architekturę heksagonalną i zobaczymy właściwe podejście do procesu którym kierują testy.
Im już pomogłem!
OPINIE MOICH KURSANTÓWDlaczego warto wybrać ten kurs?
100% PRAKTYKI OD PRAKTYKA1️⃣ Odkryj TDD krok po kroku od podstaw testowania po zaawansowane techniki.
2️⃣ 100% praktycznego podejścia: live coding i realne przykłady z życia programisty.
3️⃣ Gotowe rozwiązania: konfiguracje i narzędzia, które od razu zastosujesz w projektach.
4️⃣ Dla każdego programisty PHP niezależnie od frameworka! TDD to dyscyplina!
Co osiągniesz po kursie?
✅ Będziesz pisać kod szybciej i z większą pewnością siebie ✅
✅ Twoje aplikacje będą stabilne, a klienci zadowoleni ✅
✅ Zyskasz kompetencje, niezbędne na poziomie seniora ✅
✅ Odkryjesz podstawy programowania domenowego ✅
✅ Poznasz architekturę heksagonalną w praktyce ✅
✅ PHPUnit nie będzie miał przed Tobą tajemnic ✅
✅ Poradzisz sobie z refaktoryzacją swojego kodu ✅
Rozpocznij swoją przygodę z Test Driven Development w PHP i przenieś swój poziom programowania na nowy wymiar!
Co znajdziesz w kursie?
AGENDA KURSU TDDWstęp do testów
Już w starożytności księgowi wprowadzali informacje po stronie aktywów i pasywów, by mieć pewność, że wszystko gra – a jak wygląda to dzisiaj w Twoim kodzie?
👉 Ile przypadkowości wkrada się do naszych aplikacji?
👉 Co pojawia się najpierw – wymagania biznesowe, czy kodzik z frameworka?
👉 Jak sprawić, by Twój kod zawsze działał?
👉 Rozwijanie projektu czy możesz sobie je łatwo zapewnić?
👉 Co zrobić, by pisanie dokumentacji stało się zbędne?
👉 Kiedy pisać testy i w jaki sposób?
Tego wszystkiego dowiesz się z wstępu do Test Driven Development. Metodyki, która odmieni Twój kod na zawsze!
Dyscyplina Test Driven Development (TDD)
Kluczowym w zrozumieniu kodu, jest zrozumienie, że w TDD nie chodzi o testy, a o dyscyplinę programowania.
RED / GREEN / REFACTOR
Łatwo napisać i łatwo powiedzieć, ale… Trudniej zrobić – dlatego w tym module:
👉 Rozpoczniemy naszą przygodę z frameworkiem PHPUnit
👉 Poznamy konkretne zadanie, jakie postawił przed nami biznes
👉 Skonfigurujemy nasze testy i IDE PHPStorm
👉 Odkryjemy i zrozumiemy sens modelu domenowego
👉 Zobaczymy, jak blisko z TDD jest do DDD tak popularnego wśród programistów!
Live coding – zobacz TDD w praktyce
Od zera, do bohatera. Zobacz, jak działa TDD w realnym środowisku programistycznym.
Krok po kroku przejdziemy od wymagań biznesowych do przetestowanego kodu. Wspólnie napiszemy testy i rozwiązania na które czeka biznes!
Zobacz jak proces TDD wygląda w praktyce – od prostych funkcjonalności do kompletnej domeny. Zobacz jak zaprojektować efektywne oprogramowanie oparte o testy!
👉 Działamy zgodnie z metodologią TDD w praktyce
👉 Konfigurujemy szablony w PHPStorm
👉 Tworzymy model domenowy
👉 Używamy wzorców projektowych w testach
👉 Kontrolujemy dane, niezależnie od persystencji
👉 Refaktoryzujemy zanim wypchniemy na produkcję
👉 Korzystamy z fakerów by dane nie były zmyślone
👉 Refaktoryzujemy testy!
Zasady dobrego TDD
Pisanie testów wcale nie jest łatwe. Pisanie kodu w oparciu o TDD również.
W tym kursie nie tylko nauczysz się jak pisać zgodnie z TDD, ale też jak robić to dobrze!
Ten moduł dostarczy Ci garści porad na temat pisania naprawdę skutecznych testów.
👉 Czy dociekliwość jest istotna?
👉 Jak długo może trwać cykl TDD?
👉 Kiedy mogę pisać kod, a kiedy muszę napisać test?
👉 Za małe do testów czy za duże do testów? Co na to TDD?
👉 Czy pokrycie kodu ma znaczenie?
👉 Na czym koncentrować się w procesie developmentu?
Ukryte tajemnice PHPUnit’a
PHP Unit to bez wątpienia najpopularniejszy framework do testowania w PHP.
Zaskakujący jednak może być fakt, ilu programistów nie wie o jego ciekawych i nieoczywistych ficzerach!
👉 Jak organizować testy?
👉 Czym są atrybuty PHPUnita?
👉 Wszystko o phpunit.xml
👉 W jaki sposób to się odpala?
👉 Jak uruchamiać tylko kilka, wybranych testów?
👉 Czym są fixtures?
Razem poznamy te tajemnice i odkryjemy moc starego dobrego PHPUnita!
Code Coverage – sposób na perfekcję czy szaleństwo?
Czy metryka 100% Code Coverage to Twój cel? A jeśli nie, to po co właściwie stosować code coverage? W tym module odpowiem Ci na te pytania, pokazując narzędzie przydatne na codzień nie tylko do szpanowania pustymi statystykami na piątkowej retrospektywie!
👉 Czym jest Code Coverage i po co mi on?
👉 Jak generować raporty czytelne dla ludzi?
👉 Co pozwala nam odkryć Code Coverage?
👉 Czy potrzebuję xdebuga, a może są inne rozwiązania
Odzyskaj zdrowe relacje z Code Coverage i sam sprawdź, jakie wyniki zapewnia właściwe korzystanie z TDD!
Ryzykowne testy? I jak oszukać przeznaczenie?
Testy mają swoje stany, mogą być napisane, mogą by nie skończone. Mogą być idealne, albo całkiem nie idealne. Jeśli chcesz możesz je skipnąć, może nikt tego nie zauważy?
👉 Jak konfiguracja wpływa na stan testu?
👉 Spodziewane pokrycie kodu a test ryzykowny?
👉 Jak mogę pominąć test?
👉 Co zrobić z nieprzewidzianym outputem?
👉 Co może wpłynąć na stan testów?
Chcesz zapewnić sobie jakość i wyniki jakich potrzebujesz, nawet jeśli koledzy z zespołu trochę idą na skróty? Sprawdź co PHPUnit może dla Ciebie zrobić!
Budujemy piramidy?
Po tym jak PHPUnit i Test Driven Development nie będą miały przed Tobą tajemnic, czas iść krok dalej. Poznaj teorię piramidy testów, czyli rozkładu tego ile i jakich testów potrzebujemy najwięcej w naszej aplikacji… Tylko, czy to zawsze ma szansę zadziałać?
👉 Czym jest piramida testów?
👉 Czy piramida testów to najlepsza możliwa opcja?
👉 Jak radzić sobie z kodem legacy?
👉 Poznaj rodzaje testów wykraczające poza jednostkowe, integracyjne czy e2e!
👉 Odkryj strategie testowania aplikacji i pisania właściwych testów!
Testy integracyjne w praktyce.
Model domenowy gotowy? Aplikacja nie tylko działa, ale też świetnie wygląda? Wszystko bardzo pięknie, tylko że… Użytkownik nic z tym nie zrobi tak długo jak soft faktycznie nie zacznie działać! Spędźmy razem trochę czasu na programowaniu testów integracyjnych.
👉 Jak połączyć czystą aplikację z frameworkiem Laravel?
👉 Refaktoryzacja testów przy integracji?
👉 Odkryj architekturę heksagonalną w praktyce!
👉 Poznaj szkołę Bostońską i Chicagowską
👉 Skorzystaj z możliwości, jakie daje Laravel