2011-05-10 23 views
6

Tengo una aplicación web bastante complicada que se escribe con Grails. Estoy intentando establecer un marco de prueba funcional, inicialmente usando Selenium, pero me he encontrado con dos problemas.¿Cuál es la mejor herramienta para pruebas funcionales de una aplicación web compleja?

  1. Parte de la página que deseo probar implica una estructura de datos arborescente que se muestra con jstree. El problema aquí es que la acción que deseo simular -el usuario haciendo clic en un nodo para mostrar sus hijos- parece activarse al hacer clic en una determinada coordenada dentro de un div, que está resultando difícil de probar. He logrado solucionar el problema abriendo este nodo utilizando Javascript pasado directamente al navegador por el método executeScript() de Selenium.

  2. Webapp hace un uso intensivo de las cargas de archivos, y esto es algo que definitivamente debo probar. No hay una manera directa de enviar cargas de archivos usando Selenium.

¿Cuál es la mejor manera de solucionar esto? Estoy considerando probar Tellurium (pero no está claro al leer si las cargas de archivos funcionan) o iMacros (en el supuesto de que una extensión del navegador manejará mejor las cargas de archivos). Esta no puede ser una situación rara en la que estoy; ¿Alguien puede sugerir una mejor alternativa?

+0

Estamos usando el plugin 'functional-test' y simplemente simulamos solicitudes web, sin navegador involucrado. Puede simplificar algunas cosas. –

+0

Sería bueno poder probar usando HTMLUnit. Desafortunadamente, nos ha resultado difícil probar algunos de los recursos enriquecidos de la interfaz de usuario sin encender realmente un navegador, y realmente queremos mantener todas las pruebas en un solo marco. – mojones

+0

No difiere mucho de las pruebas de integración. Creo que sí tiene pruebas de unidad e integración de Grails, por lo que casi no hay sobrecarga de infraestructura aquí. Simplemente separe claramente, qué se usa para qué. Seguro, 'prueba funcional' nunca te permitirá probar la lógica del navegador. –

Respuesta

0

Es cierto que soy parcial, pero puedo sugerir Telerik Test Studio que puede encontrar aquí:. Acabo de verificar que podemos grabar y reproducir clics en el expansor especial de un jsTree sin dificultad alguna. También tenemos soporte integrado para manejar cargas de archivos. Que más necesitas?

Cody, Prueba Estudio oficial de apoyo

+0

Gracias por la sugerencia: parece un producto interesante. Lamentablemente, todo nuestro desarrollo se realiza en Linux, por lo que no podré probarlo. Además, esto es para una pieza de software académico de código abierto, por lo que el costo está un poco fuera de nuestro rango de precio de $ 0 :-) – mojones

0

Hemos utilizado el comprobador de funciones Rational para probar la aplicación basada en Web 2.0 utilizando dojo tool kit 1.0. Usamos junto con nuestro propio marco interno. Funcionó bien, con pocas excepciones, como soporte no muy bueno para los nuevos navegadores de las nuevas versiones de Firefox, etc.

Cuestiones relacionadas