Hlavní menu
Nástroje |
WebKiv.OpenCmsTestovaniModulu HistoryHide minor edits - Show changes to output 11 February 2010, 13:52
by
- přestěhováno na OpenCms namespaceChanged lines 1-84 from:
!Testování modulu pomocí JUnit frameworku Pokud jste ještě nikdy nepracovali s JUnit frameworkem, může přijít vhod [[http://www.vogella.de/articles/%4A%55nit/article.html | návod na používání JUnit4 v Eclipse IDE]]. !!!Konfigurace Je třeba mít staženou knihovnu ''JUnit'' verze 4.4. a ''Spring'' ve verzi 2.5 a vyšší. !!!!Nastavení Eclispe Pro zdarné testování modulu je třeba nastavit eclipse tak, aby co nejméně ovlivňoval kopírování souborů do ''[=OpenCms=]''. !!!!!Build path První je třeba nastavit ''build path'', respetive do ní přidat knihovny nad rámec již přidaných knihoven. Knihovny ''junit-4.4.jar'' a ''spring-test.jar'' se do build path přidají přes ''Properties(projektu) -> Java Build Path -> Libraries -> Add external jars''. !!!!!Source package Dále je třeba od sebe oddělit adresáře se zdrojovými kódy modulu a se zdrojovými kódy vlastních testů. Pro tento účel si vytvoříme nový ''source folder'' a pojmenujeme ho například ''test''. Do něj vytvoříme balíkovou strukturu obdobnou té z adresáře ''src'', jen balíky omezíme na testované balíky modulu. !!!!!Output adresář Z důvodu oddělení překladů zdrojových kódů a zdrojových kódů testů je třeba provést následující nastavení: ''Properties(projektu) -> Java Build Path -> Sources''. Zde je třeba zaškrnout ''Allow output folders for source folders'' a pak rozkliknout příslušný source folder a poeditovat výstupní adresář pro testy. Doporučený název je například ''test-classes''. Těmito manévry se dosáhlo toho efektu, že se budou do [=OpenCms=] kopírovat pouze přeložené třídy bez tříd testů. * Pokud budou třídy ze @@src@@ překládané do @@classes@@ a třídy z @@test@@ do @@test@@ pak je to OK, pokud by ale Eclipse překládat @@src@@ do @@src@@ je to špatně. !!!Context configuration Spring od verze 2.5 obsahuje podporu pro testování. Díky této podpoře je možné využít ''Dependency Injection'' při psaní. Proto je třeba vytvořit soubor ''xxx-context.xml'' v adresáři test, kde ''xxx'' je v ukázkovém modulu ''controller'', protože jde o soubor pro testování ''controlleru''. [@ <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <bean id="dataSource" class="org.springframework.jdbc.datasource.SingleConnectionDataSource"> <property name="driverClassName" value="org.postgresql.Driver" /> <property name="url" value="jdbc:postgresql://localhost:5432/postgres" /> <property name="username" value="postgres" /> <property name="password" value="postgres" /> </bean> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource" /> </bean> <bean id="osobyPrehledController" class="cz.zcu.kiv.opencms.springmvcapp.controllers.OsobyPrehledController"> <property name="osobaManager" ref="osobaManager" /> </bean> <bean id="osobaManager" class="cz.zcu.kiv.opencms.springmvcapp.services.OsobaManagerImpl"> <property name="osobaDao" ref="osobaDao" /> </bean> <bean id="osobaDao" class="cz.zcu.kiv.db.dao.OsobaDaoImpl"></bean> </beans> @] Spring si vynucuje mít deklarovány beany ''dataSource'' a ''transactionManager'' a to i v případě, že jde o aplikaci bez propojení s DB serverem. Poslední dvě beany jsou v tomto souboru pro injektnutí do testovaných tříd pomocí Springového ''Dependency Injection''. !!!Psaní testů Vlastní testování modulu je stejné jako testování kterékoli jiné webové aplikace. Více si můžete přečíst v uvedených odkazech. !!!Spuštění testů Spuštění tesů se provádí pří z vývojového prostředí ''Eclipse'', kde nad třídou s testy, respektive nad ''Suite class'' zavoláme ''Run as -> JUnit Test''. Test(-y) se spustí pokud je v IDE nainstalováno rozšíření pro JUnit. Toto rozšíření graficky zobrazí výsledky testů a případně zobrazí kde a proč daný test selhal. !!!Odkazy * http://static.springframework.org/spring/docs/2.5.x/reference/testing.html - Referenční příručka ''Springu'', kapitola o testování. * http://junit.org - Domovská stránka knihovny ''JUnit''. * http://wiki.kiv.zcu.cz/SlovnikTerminologie/JemnyUvodDoTestoveni - Stručný úvod do testování webové aplikace ''JUnitem'' za pomoci ''Springu''. * http://www.infoq.com/articles/testing-in-spring - Testování aplikace se Spring frameworkem * http://www.shoesobjects.com/blog/2004/11/21/1101083542880.html - Spring a Hibernate, testování dao vrstvy ---- Zpět na FrameworkyProWebKiv to:
Přestěhováno na OpenCMS.TestovaniModuluPresJUnit . 09 February 2010, 14:10
by
- odkazy na dalsi zdroje o testovani a springuChanged lines 79-80 from:
to:
* http://www.infoq.com/articles/testing-in-spring - Testování aplikace se Spring frameworkem * http://www.shoesobjects.com/blog/2004/11/21/1101083542880.html - Spring a Hibernate, testování dao vrstvy 06 February 2010, 14:37
by
- opraven linkChanged lines 4-5 from:
* http://www.vogella.de/articles/JUnit/article.html - Návod na používání JUnit4 v Eclipse to:
[[http://www.vogella.de/articles/%4A%55nit/article.html | návod na používání JUnit4 v Eclipse IDE]]. 06 February 2010, 14:30
by
- link na tutorial - junit v eclipseAdded lines 3-5:
Pokud jste ještě nikdy nepracovali s JUnit frameworkem, může přijít vhod * http://www.vogella.de/articles/JUnit/article.html - Návod na používání JUnit4 v Eclipse 04 February 2010, 10:03
by
- Added lines 25-26:
* Pokud budou třídy ze @@src@@ překládané do @@classes@@ a třídy z @@test@@ do @@test@@ pak je to OK, pokud by ale Eclipse překládat @@src@@ do @@src@@ je to špatně. 30 June 2009, 14:01
by
- Changed lines 21-22 from:
Z důvodu oddělení překladů zdrojových kódů a zdrojových kódů testů je třeba provést následující nastavení: ''Properties(projektu) -> Java Build Path -> Sources''. Zde je třeba zaškrnout ''Allow output folders for source folders'' a pak poeditovat výstupní adresář pro testy. Doporučený název je například ''test-classes''. to:
Z důvodu oddělení překladů zdrojových kódů a zdrojových kódů testů je třeba provést následující nastavení: ''Properties(projektu) -> Java Build Path -> Sources''. Zde je třeba zaškrnout ''Allow output folders for source folders'' a pak rozkliknout příslušný source folder a poeditovat výstupní adresář pro testy. Doporučený název je například ''test-classes''. 30 June 2009, 09:21
by
- Changed lines 73-77 from:
* http://wiki.kiv.zcu.cz/SlovnikTerminologie/JemnyUvodDoTestoveni - Stručný úvod do testování webové aplikace ''JUnitem'' za pomoci ''Springu''. to:
* http://wiki.kiv.zcu.cz/SlovnikTerminologie/JemnyUvodDoTestoveni - Stručný úvod do testování webové aplikace ''JUnitem'' za pomoci ''Springu''. ---- Zpět na FrameworkyProWebKiv 29 June 2009, 23:20
by
- Added lines 1-73:
!Testování modulu pomocí JUnit frameworku !!!Konfigurace Je třeba mít staženou knihovnu ''JUnit'' verze 4.4. a ''Spring'' ve verzi 2.5 a vyšší. !!!!Nastavení Eclispe Pro zdarné testování modulu je třeba nastavit eclipse tak, aby co nejméně ovlivňoval kopírování souborů do ''[=OpenCms=]''. !!!!!Build path První je třeba nastavit ''build path'', respetive do ní přidat knihovny nad rámec již přidaných knihoven. Knihovny ''junit-4.4.jar'' a ''spring-test.jar'' se do build path přidají přes ''Properties(projektu) -> Java Build Path -> Libraries -> Add external jars''. !!!!!Source package Dále je třeba od sebe oddělit adresáře se zdrojovými kódy modulu a se zdrojovými kódy vlastních testů. Pro tento účel si vytvoříme nový ''source folder'' a pojmenujeme ho například ''test''. Do něj vytvoříme balíkovou strukturu obdobnou té z adresáře ''src'', jen balíky omezíme na testované balíky modulu. !!!!!Output adresář Z důvodu oddělení překladů zdrojových kódů a zdrojových kódů testů je třeba provést následující nastavení: ''Properties(projektu) -> Java Build Path -> Sources''. Zde je třeba zaškrnout ''Allow output folders for source folders'' a pak poeditovat výstupní adresář pro testy. Doporučený název je například ''test-classes''. Těmito manévry se dosáhlo toho efektu, že se budou do [=OpenCms=] kopírovat pouze přeložené třídy bez tříd testů. !!!Context configuration Spring od verze 2.5 obsahuje podporu pro testování. Díky této podpoře je možné využít ''Dependency Injection'' při psaní. Proto je třeba vytvořit soubor ''xxx-context.xml'' v adresáři test, kde ''xxx'' je v ukázkovém modulu ''controller'', protože jde o soubor pro testování ''controlleru''. [@ <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <bean id="dataSource" class="org.springframework.jdbc.datasource.SingleConnectionDataSource"> <property name="driverClassName" value="org.postgresql.Driver" /> <property name="url" value="jdbc:postgresql://localhost:5432/postgres" /> <property name="username" value="postgres" /> <property name="password" value="postgres" /> </bean> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource" /> </bean> <bean id="osobyPrehledController" class="cz.zcu.kiv.opencms.springmvcapp.controllers.OsobyPrehledController"> <property name="osobaManager" ref="osobaManager" /> </bean> <bean id="osobaManager" class="cz.zcu.kiv.opencms.springmvcapp.services.OsobaManagerImpl"> <property name="osobaDao" ref="osobaDao" /> </bean> <bean id="osobaDao" class="cz.zcu.kiv.db.dao.OsobaDaoImpl"></bean> </beans> @] Spring si vynucuje mít deklarovány beany ''dataSource'' a ''transactionManager'' a to i v případě, že jde o aplikaci bez propojení s DB serverem. Poslední dvě beany jsou v tomto souboru pro injektnutí do testovaných tříd pomocí Springového ''Dependency Injection''. !!!Psaní testů Vlastní testování modulu je stejné jako testování kterékoli jiné webové aplikace. Více si můžete přečíst v uvedených odkazech. !!!Spuštění testů Spuštění tesů se provádí pří z vývojového prostředí ''Eclipse'', kde nad třídou s testy, respektive nad ''Suite class'' zavoláme ''Run as -> JUnit Test''. Test(-y) se spustí pokud je v IDE nainstalováno rozšíření pro JUnit. Toto rozšíření graficky zobrazí výsledky testů a případně zobrazí kde a proč daný test selhal. !!!Odkazy * http://static.springframework.org/spring/docs/2.5.x/reference/testing.html - Referenční příručka ''Springu'', kapitola o testování. * http://junit.org - Domovská stránka knihovny ''JUnit''. * http://wiki.kiv.zcu.cz/SlovnikTerminologie/JemnyUvodDoTestoveni - Stručný úvod do testování webové aplikace ''JUnitem'' za pomoci ''Springu''. |