Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

4IT445 – Testování a ladění v PHP Ing. Jan Mittner 10.11.2011.

Podobné prezentace


Prezentace na téma: "4IT445 – Testování a ladění v PHP Ing. Jan Mittner 10.11.2011."— Transkript prezentace:

1 4IT445 – Testování a ladění v PHP Ing. Jan Mittner 10.11.2011

2 Osnova 1. Unit testy, integrační testy - PHPUnit 2. Funkcionální testování - Selenium 2

3 Instalace PHPUnit  v adresáři, kde je nainstalováno PHP, je třeba spustit z příkazové řádky následující dva příkazy:  pear config-set auto_discover 1  pear install pear.phpunit.de/PHPUnit 3

4 Nastavení PHPUnit v Eclipse  v Eclipse je třeba otevřít dialog z menu pod cestou Run > External Tools > Open External Tools Dialog  v rámci položky Program v levé části okna je třeba vytvořit novou položku PHPUnit a nastavit u ní následující údaje  Location – filesystémová cesta ke spouštěcímu souboru PHP (php.exe)  Working Directory - ${workspace_loc}  Arguments – [cesta_k_instalaci_PHP]\phpunit ${resource_loc} 4

5 Nastavení PHPUnit v Eclipse 5

6 Tvorba jednoduchých testů  tvorba jednoduchého jednotkového testu  třídy testů dědí PHPUnit_Framework_TestCase  jednotlivé testy jsou metody testovacího objektu, začínající prefixem „test“  metoda assertEquals() apod. slouží pro testování hodnot testů  metoda setUp() – úvodní nastavení údajů pro testování  car-test.php, product-test.php 6

7 Testování výjimek  PHPDoc testovací metody obsahuje deklaraci @expectedException NazevVyjimky, která definuje výjimku, jíž má test vyhodit  product-test.php ▪ test definuje i vlastní třídu (ConcreteProduct) pro otestování abstraktního objektu produktu  výjimku je možné nastavit i skrze metodu setExpectedException() testovacího objektu 7

8 Agregace testů  spuštění více testů najednou je realizováno skrze agregační testovací třídu  implementace statické metody suite() objektu definuje testy, které mají být spuštěny  objekt PHPUnit_Framework_TestSuite a jeho metoda addTestSuite() stanovuje veškeré testovací objekty, které mají být spuštěny  all-tests.php 8

9 Spouštění PHPUnit  v PHP Explorer je třeba myší označit soubor testu určeného pro spuštění  nad souborem je pak třeba spustit PHPUnit konfiguraci z External Tools  po provedení testu se výsledky objeví na výpisu konzole v Eclipse 9

10 Spouštění PHPUnit 10

11 Úkoly  zprovozněte si doma PHPUnit  vytvořte si další testy modelů naší aplikace 11

12  odlišné od unit testů  netestují se dílčí funkce či metody  sleduje se, zda aplikace funguje z pohledu uživatele

13  identifikace testovacích scénářů  „Uživatel může procházet katalogem produktů“  „Uživatel může zakoupit vybraný produkt“  „Uživatel může najít produkt pomocí vyhledávání“  rozdělení scénářů do dílčích kroků  dle složitosti buď jednotlivé kroky, nebo definice subscénářů (tj. dalších testů)  napsání testů  využití vhodného nástroje ▪Selenium IDE  spouštění a vyhodnocení testů  často, při každé změně, která mohla ovlivnit testovanou část

14  http://seleniumhq.org/ http://seleniumhq.org/  balík nástrojů  Selenium IDE ▪plugin do Firefoxu 2+  Selenium RC (Remote Control) ▪automatizované spouštění testů ze serveru  Selenium Grid ▪nadstavba nad Selenium RC ▪paralelní zpracování na více serverech

15  použijeme ho na:  záznam a úpravu testů  spouštění testů  pro základní práci není třeba žádná další komponenta (ani Selenium RC ani Grid)  jde testovat i JavaScript a AJAX  není to ale příliš intuitivní ani triviální

16  instalace Selenium IDE  otestování aplikace

17  automatické testování v Selenium RC  zápis testů přímo v PHP  code coverage  lze vyřešit, jak zjistit, jaké procento kódu bylo provedeno při funkcionálním testování

18 Úkoly  vyzkoušejte si naklikat test v Selenium IDE 18


Stáhnout ppt "4IT445 – Testování a ladění v PHP Ing. Jan Mittner 10.11.2011."

Podobné prezentace


Reklamy Google