es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo ejecutar pruebas de integración del sistema junit en kubernetes/service mesh?

Tenemos un service mesh/kubernetes funcionando a través de la terminal, mostrando todos los diferentes pods con sus diferentes espacios de nombres. Dentro de cada pod, puedes acceder a la consola y ver el app.jar.

Recientemente, el jefe/cliente preguntó cómo podemos ejecutar las diversas pruebas de INTEGRACIÓN DEL SISTEMA para cualquier archivo JAR específico desde la línea de comandos del service mesh/kubernetes. Google sugiere utilizar ‘mvn clean install’, ‘javac’ o ‘java -jar junit-platform-console-standalone-1.7.2.jar –class-path target –select-class’. Todos ellos fallan por diversas razones (mvn no está presente, javac no está presente, el jar dice que el puerto está en uso. Por supuesto que el puerto está en uso, el mismo archivo jar mencionado anteriormente lo está utilizando).

Cuando miro un pod en Gitlab (o Intellij) veo todas las pruebas que tiene. Pero ¿cómo puedo ejecutar estas pruebas de INTEGRACIÓN DEL SISTEMA desde la consola del pod? Idealmente, sería un comando para ejecutar todas las pruebas, eso haría las cosas mucho más fáciles.

Edit:
Risas por el revuelo en los comentarios. Aclaré con el jefe, ella dijo que queremos ejecutar pruebas de integración del sistema desde el service mesh, no pruebas unitarias. Estos pods no están aislados, algunos dependen de otros.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Ejecución de pruebas de integración del sistema para JAR desde la línea de comandos de Service Mesh/Kubernetes

    Como experto en TI especializado en Kubernetes, JUnit y ServiceMesh, me he encontrado con un escenario en el que mi cliente me preguntó cómo ejecutar diversas pruebas de INTEGRACIÓN DEL SISTEMA para un JAR específico desde la línea de comandos de service mesh/Kubernetes.

    Cuando investigué más a fondo, descubrí que el uso de comandos tradicionales como mvn clean install, javac o java -jar junit-platform-console-standalone-1.7.2.jar --class-path target --select-class no funcionaba como se esperaba. Uno de los problemas que se enfrentaban era que el puerto ya estaba en uso debido a que el mismo JAR lo estaba utilizando.

    Después de explorar varias opciones, descubrí que se pueden ejecutar pruebas de integración desde la consola del pod utilizando Gitlab o IntelliJ. Estos pods pueden no estar aislados y algunos de ellos pueden depender entre sí.

    Idealmente, un comando para ejecutar todas las pruebas haría las cosas más fáciles. Sin embargo, como las pruebas pueden no estar aisladas, ejecutarlas todas juntas puede no ser una solución óptima debido a las interdependencias. Se pueden ejecutar manualmente las pruebas llamándolas una por una desde la consola del pod.

    Alternativamente, se puede utilizar un ejecutor de pruebas como JUnit o TestNG para agrupar las pruebas y ejecutarlas juntas. Este enfoque ayudará a garantizar que las pruebas interdependientes se ejecuten juntas y también facilitará todo el proceso desde la línea de comandos.

Comments are closed.