Karate E2E
La suite E2E vive en e2e/karate y usa Karate 2.0.2 sobre Java 21. Su funcionamiento diferencia con claridad el flujo remoto estandar y el flujo local del desarrollador.
Comandos principales
Verificacion estandar
mvn -q -f e2e/karate/pom.xml clean verify '-Dkarate.options=--tags ~@local'
Ejecuta los escenarios remotos y evita depender del microservicio local.
Configuracion
-
karate-config.jscentraliza la carga del entorno. -
config-pre.ymldefine las URLs remotas. -
config-local.ymldefine el endpoint local por defecto. -
APP_PORTsobreescribe el puerto delocalcuando el desarrollador levanta el servicio demo fuera de8080.
Estructura
-
src/test/java/tests/KarateRunnerTest.java: suite JUnit Platform. -
src/test/java/tests/KarateExecutionSpec.java: resolucion de tags y generacion de reportes. -
src/test/resources/tests/products/**: features y datos de prueba. -
combine-reports.js: consolidacion de reportes JSON cuando hace falta un artefacto agregado.
Reportes
Tras ejecutar la suite:
-
HTML:
target/karate-reports/karate-summary.html -
Timeline:
target/karate-reports/karate-timeline.html -
JSON consolidado:
target/cucumber-result.json -
Masterthought:
target/cucumber-html-reports/ -
JUnit XML:
target/surefire-reports/