Switch branches/tags
Nothing to show
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
..
Failed to load latest commit information.
gradle/wrapper
src
.gitignore
README.md
build.gradle
gradlew
gradlew.bat

README.md

Pruebas unitarias, de integración y funcionales con Apache Tapestry

Este proyecto contiene la configuración básica de gradle para disponer de la infraestructura necesaria para hacer pruebas unitarias, de integración y funcionales de un proyecto que use el framework Apache Tapestry.

Las pruebas unitarias de los componentes y páginas de Apache Tapestry pueden realizarse de varias formas. Dado que los componentes y páginas son POJOs puede probarse el código Java de los mismos con teses de JUnit e inyectando los objetos con los que trabaje el componente. Los mocks a inyectar pueden ser creados con la librería Mockito. La prueba HolaMundoTest muestra este caso.

Si además del código Java se quiere probar el código HTML generado por un componente o página se ha de utilizar la clase PageTester. La prueba HolaMundoWithTesterTest muestra este caso usando tapestry-testify. Para facilitar la búsqueda de elementos en el objeto Document devuelto por el método [PageTester.renderPage](http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/test/PageTester.html#renderPage(java.lang.String) se puede utilizar tapestry-xpath que permite usar expresiones xpath al hacer las búsquedas.

Si queremos hacer pruebas de integración o funcionales se puede utilizar Geb que combinado con Spock y el plugin para gradle del servidor de tomcat permiten arrancar un servidor tomcat embebido con la aplicación contra el que se ejecutarán las pruebas.

Comandos

Para ejecutar los teses unitarios:

./gradlew test

Para ejecutar los teses de integración y funcionales:

./gradlew integrationTest

Para ejecutar la aplicación:

./gradlew tomcatRun

...y abrir http://localhost:8080/TapestryTest/Index en el navegador.