2011-06-03 5 views
7

En relación con un previous question, me gustaría tener varias carpetas de prueba para diferentes tipos de prueba y poder ejecutar las pruebas contenidas en cada carpeta con una acción SBT por separado.Configuración de acciones para varias carpetas de prueba en SBT

Por ejemplo, una acción 'test-unit' correría sólo las pruebas contenidas en la carpeta src/test/Scala/unidad, y una acción 'test-funcional' correría sólo las pruebas bajo src/prueba/scala/funcional. ¿Cómo escribiríamos acciones para hacer esto?

Respuesta

3

Si está utilizando xsbt 0.10.0, puede crear fácilmente additional test configurations definiendo la configuración de compilación completa en un archivo Scala ubicado en su carpeta project. A continuación se muestra el ejemplo wiki para pruebas de integración. El diseño del directorio predeterminado es un poco diferente al suyo, las pruebas unitarias van en src/test/scala y las pruebas de integración en src/it/scala. Desde la consola, puede ejecutar test para ejecutar pruebas unitarias o it:test para pruebas de integración.

import sbt._ 
import Keys._ 

object B extends Build 
{ 
    lazy val root = 
    Project("root", file(".")) 
     .configs(IntegrationTest) 
     .settings(Defaults.itSettings : _*) 
     .settings(libraryDependencies += specs) 

    lazy val specs = "org.scala-tools.testing" %% "specs" % "1.6.8" % "it" 
} 
+0

¿Alguna idea de cómo hacer esto en 0.7.7? –

+0

¿A qué archivo scala se supone que debe ir esto? No dice. –

+0

El nombre del archivo no importa siempre que sea un archivo .scala ubicado en el directorio 'project'. Eche un vistazo al archivo de compilación de Scalaz para obtener un ejemplo más detallado https://github.com/scalaz/scalaz/blob/master/project/ScalazBuild.scala –

Cuestiones relacionadas