Unit testování v PHP

48d7uwuolqbxv9d-v-trave-1458x1458.jpg

Petr 'PePa' Pavel

Přes dvacet let se živím jako programátor na volné noze, poslední roky navíc jako lektor / mentor / průvodce životem. Učím jednotlivce i ve firmě (např. Více o lektorovi »

48d7uwuolqbxv9d-v-trave-1458x1458.jpg

Petr 'PePa' Pavel

Přes dvacet let se živím jako programátor na volné noze, poslední roky navíc jako lektor / mentor / průvodce životem. Učím jednotlivce i ve firmě (např. Více o lektorovi »

48d7uwuolqbxv9d-v-trave-1458x1458.jpg

Petr 'PePa' Pavel

Přes dvacet let se živím jako programátor na volné noze, poslední roky navíc jako lektor / mentor / průvodce životem. Učím jednotlivce i ve firmě (např. Více o lektorovi »

3143140-7763780-unit-testing-700x350-blur.jpg
poblíž nám. Jiřího z Poděbrad, Praha (mapa)

Kurz je individuální

Kurzu se již zúčastnili

Kurz je individuální

Nevyhovuje ti vypsaný termín?

Nech nám svůj e-mail – dáme ti obratem vědět, jakmile lektor vypíše další nové termíny.

Poznámka k termínu

Kdyby sis chtěl/a počkat na skupinový termín, dej mi vědět. Není problém ho vypsat tak, aby ti to vyhovovalo. Vyjde levněji, ale nebudu se ti moct tolik věnovat.

Poznámka k termínu

Budeme používat Zoom, který umožňuje vzdálené ovládání klávesnice a myši. Jako zálohu Whereby.com (jen sdílení obrazovky).

Kdyby sis chtěl/a počkat na skupinový termín, dej mi vědět. Není problém ho vypsat tak, aby ti to vyhovovalo. Vyjde levněji, ale nebudu se ti moct tolik věnovat.

Máš aplikaci, do které se bojíš sáhnout, protože se vždycky někde něco podělá a přijde na to až zákazník? Hodiny ručně testuješ, proklikáš ji skrz naskrz a stejně ti něco uteče?

Není možné ručně vyzkoušet všechny kombinace, a proto u složitých aplikací potřebuješ automatizované testy. Unit testy jsou jejich součástí a nejsou žádná věda. Jsou to malé programy volající jednotlivé části hlavního programu s parametry, které dobře prověří jeho funkčnost.

Co se dozvíš

  • jak mají dobré unit testy vypadat
  • jak testovat objekty se závislostmi - mockováním a refaktorováním
  • ukážeme si knihovnu PHPUnit
  • jak integrovat testy do IDE, abys je mohl(a) spouštět často
    i jak je spustit pomocí PHP CLI z příkazové řádky (třeba kvůli automatizovaném deploymentu)
  • jak pomocí reflexí testovat privátní metody
  • jak při testu přeskočit některé metody jejich překrytím / testováním přes mock
  • jak měřit a vidět pokrytí testy pomocí PhpStorm / Run with Coverage

Ale hlavně - testování změní tvůj pohled na to, jak psát kód. Začneš programovat tak, aby tvoje aplikace byly snadno testovatelné a už tím bude tvůj kód čistší a chyby zřetelnější.

Co potřebuješ umět?

Obvykle se testují složitější aplikace postavené objektově. Nic ti ale nebrání naučit se testovat, i když ještě vaříš špagety :-) Aspoň přeskočíš obvyklé začátečnické chyby a ušetříš si spoustu času a frustrací.

Máš aplikaci, do které potřebuješ unit testy dopsat? Výborně, tím líp.

Co potřebuješ mít s sebou?

Můžeš přijít s prázdnýma rukama a ukazovat si budeme na mých testech. Nebo dodáš vlastní aplikaci a budeme konkrétnější. Na tvém nebo mém počítači.

Kdy a kde se kurz koná?

Můžeme se sejít, kdy se ti to bude hodit, v okolí Jiřího z Poděbrad, třeba v pracovna.cz nebo u mě doma. Klidně s sebou vezmi kamaráda nebo kolegu. Kdybys chtěl(a), abych přišel k tobě do firmy, dej vědět, domluvíme se. Nebo mi nasdílíš obrazovku a sfoukneme to na dálku přes Skype nebo něco jiného.

English version

Do you find it more and more difficult to make changes to your application? Does always something break without you noticing? Then you need automated testing - unit testing to begin with. I'll show you how to run test from the command line, how to use PHPUnit and integrate it into your IDE, how to test private methods and more.

We can either meet in person or you can share your screen with me and we can do it remotely. Bring a friend if you want. Sign up and bring your programming to the next level.

Víš, že Petr vede také tyto kurzy?

Víš, že Petr vede také tyto kurzy?

Víš, že Petr vede také tyto kurzy?

Odebírej náš newsletter

Posíláme tipy na nové kurzy, zajímavé a přínosné články. Informujeme o dění a vývoji projektu Naučmese.