AEM proporciona un marco para automatizar las pruebas de la IU AEM. Con el marco, las pruebas de interfaz de usuario se escriben y ejecutan directamente en un navegador web. La estructura proporciona una API de javascript para crear pruebas.
El marco de AEM prueba utiliza Hobbes.js, una biblioteca de pruebas escrita en JavaScript. El marco Hobbes.js fue desarrollado para probar AEM como parte del proceso de desarrollo. El módulo ya está disponible para uso público para probar las aplicaciones AEM.
Consulte la documentación de Hobbes.js 🔗 para obtener detalles completos de la API.
Al utilizar pruebas automatizadas dentro de AEM, es importante comprender los siguientes términos:
Acción | Una acción es una actividad específica de una página Web, como hacer clic en un vínculo o en un botón. |
Caso de prueba | Un Caso de prueba es una situación específica que puede estar formada por una o más Acciones. |
Test Suite | Un Test Suite es un grupo de Casos de prueba relacionados que juntos prueban un caso de uso específico. |
Abra la consola de pruebas para ver los grupos de pruebas registrados. El panel Pruebas contiene una lista de los grupos de pruebas y sus casos de prueba.
Vaya a la consola Herramientas mediante Navegación global -> Herramientas > Operaciones -> Pruebas.
Al abrir la consola, los grupos de pruebas se muestran a la izquierda junto con una opción para ejecutarlos de forma secuencial. El espacio a la derecha que se muestra con un fondo de cuadros es un marcador de posición para mostrar el contenido de la página a medida que se ejecutan las pruebas.
Los grupos de pruebas se pueden ejecutar de forma individual. Al ejecutar un grupo de pruebas, la página cambia a medida que se ejecutan los casos de prueba y sus acciones y los resultados aparecen una vez finalizada la prueba. Los iconos indican los resultados.
Un icono de marca de verificación indica una prueba pasada:
El icono "X" indica que la prueba ha fallado:
Para ejecutar un grupo de pruebas:
En el panel Pruebas, toque o haga clic en el nombre del caso de prueba que desee ejecutar para expandir los detalles de las acciones.
Toque o haga clic en el botón Ejecutar prueba.
El marcador de posición se reemplaza por el contenido de la página a medida que se ejecuta la prueba.
Revise los resultados del caso de prueba tocando o haciendo clic en la descripción para abrir el panel Resultado. Al tocar o hacer clic en el nombre del caso de prueba en el panel Resultado se muestran todos los detalles.
Los grupos de pruebas se ejecutan secuencialmente en el orden en que aparecen en la consola. Puede explorar en profundidad una prueba para ver los resultados detallados.
En el panel Pruebas, toque o haga clic en el botón Ejecutar todas las pruebas o en el botón Ejecutar pruebas debajo del título del grupo de pruebas que desee ejecutar.
Para vista de los resultados de cada caso de prueba, toque o haga clic en el título del caso de prueba. Al tocar o hacer clic en el nombre de la prueba en el panel Resultado se muestran todos los detalles.
El siguiente procedimiento lo lleva a cabo a través de la creación y ejecución de un grupo de pruebas con contenido de We.Retail, pero puede modificar fácilmente la prueba para utilizar una página web diferente.
Para obtener más información sobre cómo crear sus propios grupos de pruebas, consulte la documentación de la API de Hobbes.js.
Abra CRXDE Lite. (http://localhost:4502/crx/de)
Haga clic con el botón secundario en la carpeta /etc/clientlibs
y haga clic en Crear > Crear carpeta. Escriba myTests
para el nombre y haga clic en Aceptar.
Haga clic con el botón secundario en la carpeta /etc/clientlibs/myTests
y haga clic en Crear > Crear nodo. Utilice los siguientes valores de propiedad y haga clic en Aceptar:
myFirstTest
cq:ClientLibraryFolder
Añada las siguientes propiedades al nodo myFirstTest:
Nombre | Tipo | Value |
---|---|---|
categories |
String[] |
granite.testing.hobbes.tests |
dependencies |
String[] |
granite.testing.hobbes.testrunner |
Solo AEM Forms
Para probar los formularios adaptables, agregue los siguientes valores a las categorías y dependencias. Por ejemplo:
categorías: granite.testing.hobbes.tests, granite.testing.hobbes.af.commons
dependencias: granite.testing.hobbes.testrunner, granite.testing.hobbes.af
Haga clic en Guardar todo.
Haga clic con el botón secundario en el nodo myFirstTest
y haga clic en Crear > Crear archivo. Asigne un nombre al archivo js.txt
y haga clic en Aceptar.
En el archivo js.txt
, escriba el siguiente texto:
#base=.
myTestSuite.js
Haga clic en Guardar todo y cierre el archivo js.txt
.
Haga clic con el botón secundario en el nodo myFirstTest
y haga clic en Crear > Crear archivo. Asigne un nombre al archivo myTestSuite.js
y haga clic en Aceptar.
Copie el siguiente código en el archivo myTestSuite.js
y luego guarde el archivo:
new hobs.TestSuite("Experience Content Test Suite", {path:"/etc/clientlibs/myTests/myFirstTest/myTestSuite.js"})
.addTestCase(new hobs.TestCase("Navigate to Experience Content")
.navigateTo("/content/we-retail/us/en/experience/arctic-surfing-in-lofoten.html")
)
.addTestCase(new hobs.TestCase("Hover Over Topnav")
.mouseover("li.visible-xs")
)
.addTestCase(new hobs.TestCase("Click Topnav Link")
.click("li.active a")
);
Vaya a la consola Testing para probar el grupo de pruebas.