Primeros pasos con Scala: FooTest

En último lenguaje que decidí aprender fue Scala y siguiendo la política que mencioné en un post anterior, comencé programado un FooTest.

Al intentar hacer esto me encontré que Scala, a diferencia de Ruby, no viene con ningún framework de test incluido. Luego de investigar un poco encontré que hay más de una herramienta de test disponibles en la web. Finalmente decidí utilizar ScalaTest. En cuanto a herramienta de build ya sabía de la existencia de SBT, así que simplemente investigué cómo hacer que SBT ejecutara los tests escritos con ScalaTest. El resultado fue este proyectito.

footest_scala

 

Anuncios

5 comentarios en “Primeros pasos con Scala: FooTest

  1. A modo de comentario (valga la redundancia je!), el build.sbt lo escribiría de la siguiente manera:
    (es necesario dejar un renglón en blanco entre cada linea de código si se está usando un versión de sbt < 0.13.7)

    name := "foo"

    version := "1.0"

    scalaVersion := "2.10.4"

    lazy val root = (project in file("."))

    libraryDependencies += "org.scalatest" %% "scalatest" % "2.0" % "test"

    Usar %% en lugar de % evita tene que poner el _2.10 o _2.11, dependiendo de la versión de scala que se esté usando, y lo resuelva automáticamente.

    Adicionalmente especificaría la versión de sbt a usar, para lo cual hay que crear una carpeta project en el root del proyecto y dentro poner un archivo que se llame build.properties que contenga lo siguiente: sbt.version=0.13.5 (0.13.5 o la versión que se quiera).

    Bienvenido al fantastico mundo de Scala (siempre y cuando no te metas con base de datos relacionales, particularmente no me gusta mucho lo que hay).

    Saludos.

      1. La verdad que no mucho, antes estaba usando mongodb, ahora que estoy con MySQL fuí por el lado de Slick, ya que estaba más actualizado, o sea, es compatible con scala 2.11, cosa que otros que había visto no, como Squeryl, aunque fué hace unos meses, quizás cambió. De todas formas vengo trabajando más con Java y MsSQL, o sea usando Hibernate, JPA. Y el hecho de tener con Slick el id del objeto en lugar de tener automágicamente el objeto de forma lazy con JPA, está haciendo que me rompa un poco la cabeza.
        Entiendo que con Active Record en Ruby, al igual que Slick, tenés solo el id, así que no te debería resultar chocante.
        De hecho hay un proyecto scala-activerecord: https://github.com/aselab/scala-activerecord/tree/master/play2

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s