¿Qué enfoque de prueba de automatización es el más adecuado para una aplicación basada en web basada en JSF y PrimeFaces (interfaces de usuario basadas en componentes)?

Según su descripción, definitivamente parece que el Modelo de objetos de página junto con los Objetos de página sería el mejor enfoque para un mantenimiento reducido.

Marco de referencia

Framework es como la biblioteca central y no debe depender de la aplicación bajo prueba. Debe ser lo suficientemente genérico como para ejecutar una prueba en cualquier aplicación web.
El marco debe contener los métodos genéricos para actuar sobre los elementos de la página. En otras palabras, el usuario de framework no debería tener que trabajar directamente con el objeto controlador. Framework debería encargarse de proporcionar todos los métodos necesarios para la interacción del usuario.
Un usuario de su marco no debería tener que preocuparse por cómo se abren los navegadores o cómo se produce el clic.

Modelo de objeto de página
La implementación del modelo de objetos de página no está dentro del marco. Debería estar en su proyecto java que utiliza la biblioteca de marco. Esto reduciría defensivamente el mantenimiento

Repositorio de objetos
Cuando siga el modelo de objeto de página, definirá los localizadores dentro de las páginas. Mantener todos los localizadores de una aplicación en un solo archivo causará problemas de mantenimiento más adelante. Mantener cada uno en su propia clase de página hará que sea mucho más fácil cambiar y depurar.

Crear un proyecto de automatización que respalde todo esto y facilite el mantenimiento lleva tiempo. A mi equipo le llevó alrededor de 1,5 años desarrollar el marco y presentar informes a su estado actual. Hoy, el marco admite la ejecución de alrededor de 35K pruebas por día utilizando alrededor de 2000 máquinas virtuales, cada una con 4 instancias de un navegador. Todavía tenemos un equipo dedicado para codificar los cambios (no usamos excelentes para conducir la prueba). Todo nuestro código está en Java y lo consideramos como un código de producción. Tendrá que seguir ese enfoque para hacer que las pruebas de automatización sean lo suficientemente valiosas e interesantes.

Prueba QF-Test, registra y reproduce todas tus acciones fácilmente

More Interesting

¿Qué método se utiliza en sitios que no requieren múltiples archivos HTML y permanecen en la misma página cuando se hace clic en un botón que carga nueva información en el área de información?

Cómo construir una API primero o CMS desacoplado desde cero

¿Es correcto que Python tenga un rendimiento lento para crear aplicaciones web?

Si quiero crear aplicaciones basadas en la web, ¿qué lenguajes de programación debo aprender?

¿Cómo puedo aprovechar mi habilidad de desarrollo de aplicaciones C ++ QT para construir aplicaciones web HTML5? ¿Existe un solo marco de JavaScript HTML5 que sea similar?

¿Cuáles son las mejores prácticas para minimizar las llamadas al servidor en una aplicación web?

¿Cuáles son los parámetros básicos que deciden cuándo necesitamos agregar servidores adicionales para aplicaciones web (LAMP)?

¿Cómo puede un inicio completamente nuevo ganar tracción para su aplicación web?

¿Cuál será su pila tecnológica para crear aplicaciones SaaS escalables de alto rendimiento?

¿Cuál es la mejor manera de crear aplicaciones web fuera de línea para iPad?

¿Cómo se crea un entorno de mundo virtual en línea que la gente realmente usará?

¿Cómo se abren los archivos PUB en Windows sin Microsoft Publisher?

¿Cómo externalizo la interfaz de usuario de una aplicación web dinámica?

¿Cuáles son algunos frameworks, bibliotecas o herramientas "en boga" entre los desarrolladores que nacen y / o se mantienen principalmente en la Europa mediterránea?

¿Cuál es la diferencia entre el servidor web y la aplicación web?