Saltar al contenido

Cómo ejecutar una única prueba en scalatest de maven

Solución:

tl; dr mvn test -Dsuites="some.package.SpecsClass"


Encontré una respuesta desde aquí y funciona: (https://groups.google.com/forum/#!topic/scalatest-users/Rr0gy61dg-0)

ejecutar la prueba ‘una prueba pendiente’ en HelloSuite, y todas las pruebas en HelloWordSpec:

 mvn test -Dsuites="org.example.
HelloSuite @a pending test, org.example.HelloWordSpec" 
  • ejecutar todas las pruebas en HelloSuite conteniendo 'hello':

    mvn test -Dsuites="org.example.HelloSuite hello"

para más detalles: http://scalatest.org/user_guide/using_the_scalatest_maven_plugin

Encontré la respuesta: es

-DwildcardSuites

Así que aquí está la línea de comando de ejemplo:

mvn -pl streaming -DwildcardSuites=org.apache.spark.streaming.InputStreamSuite test

Actualizar Versiones más recientes de scalatest usar

 -Dsuites

Entonces la sintaxis sería:

mvn -pl streaming -Dsuites=org.apache.spark.streaming.InputStreamSuite test

Tenga en cuenta que si tiene algunas pruebas de Java en el mismo módulo, como gran parte de Spark, debe desactivarlas, lo que puede hacer al decirle a surefire que ejecute una prueba que no está allí.

Aquí está la prueba que acabo de hacer

mvn test -Dtest=moo -DwildcardSuites=org.apache.spark.deploy.yarn.ClientSuite

Eso omite la prueba de Java y solo ejecuta Scala One.

Una cosa que scalatest no parece hacer es permitirle ejecutar una sola prueba dentro de una suite, como lo hace Maven surefire. Eso no es ideal si tiene una prueba fallida en una suite grande.

[Correction 2016-08-22: looks like you can ask for a specific suite by name; look at the other answers below. Happy to be wrong].

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *