Lekce 5 - Testování v PHP - Xdebug a coverage reports

Vydávání, hosting a aktualizace umožňují jeho sponzoři.
V minulé lekci, PHPUnit DataProvider a BestPractices, jsme se věnovali anotaci
@dataProvider
, testování protected metod a best practices. Dnes
nás čeká nástroj Xdebug a také generování tzv. Code Coverage reportů,
které nám řeknou jak velkou část naší aplikace testy pokrývají a
dokonce i jak je náš kód dobře napsaný.
Xdebug
Pokud jste v minulosti začínali programovat v nějakém kompilovaném desktopovém jazyce (Pascal/C/C++/Delphi), určitě se vám v PHP stýská po debuggeru. Obvykle jsme měli ve vývojovém prostředí možnost umístit do programu tzv. break pointy. Na těchto řádcích se program zastavil a vrátil do IDE. Následně jsme viděli obsah proměnných, obsazenost paměti, mohli jsme program postupně krokovat a dívat se proč nedělá to, co potřebujeme. Po přechodu na web samozřejmě tato pomůcka přestává fungovat, jelikož PHP voláme požadavkem přes webový prohlížeč a IDE je tak trochu mimo hru. Nebo ne?
Xdebug je rozšíření pro PHP, které pomocí protokolu posílá zprávy o běhu programu. Tyto zprávy umí chytrá IDE zachycovat a tím pádem umožňují program debugovat jako by to byla desktopová aplikace:

Xdebug nabízí např:
...konec náhledu článku...

Prémiový článek
Na itnetwork.cz se nachází největší a nejucelenější česká databáze s výukovými články, jejímž cílem je umožnit kvalitní vzdělání v oblasti IT úplně každému. Měsíčně zobrazíme k milionu článků a sklidíme desítky děkovných emailů, kde nám sdělujete, že jsme vám pomohli k lepšímu zaměstnání nebo vzdělání.
Ačkoli se snažíme držet většinu obsahu úplně zadarmo, udržovat síť v provozu a aktuální stojí obrovské úsilí. Proto je nějaký obsah, jako cvičení nebo odbornějšíčlánky, přístupný pouze za body. Nebojte, nestojí to skoro nic :)
Popis článku
Požadovaný článek má následující obsah:
Naučíme se ladit PHP aplikace za běhu pomocí Xdebug, který v tutoriálu nastavíme. Pomocí nástrojů vygenerujeme reporty pokrytí kódu testy a kvality kódu.
Koupí článku k němu získáš neomezený přístup a to napořád. Posuneš své znalosti zas kousek dopředu a zároveň nám pomůžeš udržovat celý projekt při životě a pomáhat vám tak k lepší budoucnosti.
Obsah článku spadá pod licenci Premium III, koupí článku souhlasíš se smluvními podmínkami.
Body získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.
Dobít body můžeš okamžitě např.:
![]() |
![]() |
![]() |
Kartou | SMS | Převodem |