2011-08-30 10 views

Respuesta

3

Como una alternativa para conseguir SBT para imprimir la traza completa, podría poner un try - bloque catch alrededor de su corredor de prueba? Por ejemplo, desde el REPL:

scala> try { throw new Exception } catch { case e => e } 
res1: java.lang.Throwable = java.lang.Exception 

scala> res1.printStackTrace 
java.lang.Exception 
    at $line2.$read$$iw$$iw$.liftedTree1$1(<console>:8) 
    at $line2.$read$$iw$$iw$.<init>(<console>:8) 
    at $line2.$read$$iw$$iw$.<clinit>(<console>) 
    ... 
37

Utilización de las sugerencias encontradas en el documentation here:

(citado)

Puede configurar el resultado que se muestra cuando se ejecuta con SBT de cuatro maneras: 1) apague el color, 2) muestre rastros de pila cortos, 3) rastros de pila completos, y 4) muestre duraciones para todo. Para ello, debe pasar un argumento -o para ScalaTest, y después de la -o, colocar cualquier combinación de:

  • D - mostrar duraciones
  • S - espectáculo pila pequeña traza
  • F - mostrar completa pila traza
  • W - sin color de

Por ejemplo, "-oDF" mostraría rastros completos de la pila y duraciones (la cantidad de tiempo empleado en cada prueba).

para pasar argumentos de SBT a ScalaTest puede agregar opciones de prueba a nivel mundial, así:

testOptions in Test += Tests.Argument("-oD") 

(Véase el sitio web para el resto de la cita)

Puede utilizar el siguiendo el comando sbt para habilitar rastros de pila completos en las pruebas:

> set testOptions in YourProjectName += Tests.Argument("-oF") 
+3

Seguramente esta es la respuesta * correcta *? –

+14

alternativamente, se pueden habilitar las trazas de pila completas durante la ejecución de la prueba de línea de comandos con '- -oF' param:' sbt test - -oF' – Sasha

+1

El problema con el indicador '-oF' es que también muestra las trazas completas de la pila algo tan simple como una coincidencia incorrecta. No es necesario que haya una traza de pila completa para 2, no es igual a 3. ¿Alguna idea de cómo se puede resolver esto? – chbh

Cuestiones relacionadas