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.

@Suite.SuiteClasses no está funcionando para el proyecto Scala.

Soy un traductor de español que traduce documentos de TI. Traduce lo siguiente al español. No traduzcas el código ni la salida en markdown

Soy nuevo en Scala, necesito convertir código Java a Scala:

La clase Level2TestReporter.class está en el archivo jar llamado iteser.jar. La clase Level2TestReporter.class contiene el método @test.

@RunWith(Suite.class)
@Suite.SuiteClasses({Level2TestReporter.class})
class  OrganizationRegexModelComponentTester  implements ITester {

    public List<Map<String, Object>> testComponent(Map<String, Object> input, Map<String, Object> metadata) {
    List<Map<String, Object>> list = new ArrayList<>();
    return list ;
}

Cómo escribir en Scala, he intentado:

@RunWith(classOf[Suite])
@Suite.SuiteClasses(Array(classOf[Level2TestReporter]))
class  OrganizationRegexModelComponentTester  extends ITester {

  override def testComponent(input: java.util.Map[String, Object], metadata: java.util.Map[String, Object]): util.List[util.Map[String,AnyRef]]  = {

  val list: util.List[Map[String, AnyRef]] = new util.ArrayList[Map[String, AnyRef]]

  list
}

pero sbt test no está invocando los métodos de prueba. Por favor ayuda.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para convertir el código Java dado a Scala, puedes probar el siguiente código:

    import java.util.{ArrayList, List, Map}
    
    import org.junit.runner.RunWith
    import org.junit.runners.Suite
    
    @RunWith(classOf[Suite])
    @Suite.SuiteClasses(Array(classOf[Level2TestReporter]))
    class OrganizationRegexModelComponentTester extends ITester {
    
      override def testComponent(input: Map[String, AnyRef], metadata: Map[String, AnyRef]): List[Map[String, AnyRef]] = {
        val list: List[Map[String, AnyRef]] = new ArrayList[Map[String, AnyRef]]()
        list
      }
    
    }
    

    Asegúrate de importar todas las clases e interfaces Java requeridas. Además, comprueba si el archivo jar “iteser.jar” se ha añadido a la ruta de construcción.

    Si el comando “sbt test” no está invocando los métodos de prueba, asegúrate de revisar lo siguiente:

    1. El código Scala está en el directorio correcto y se ha compilado correctamente.
    2. Las dependencias de JUnit y SBT se han añadido correctamente.
    3. Los métodos de prueba tienen nombres correctos y están anotados con @Test.
    4. Las pruebas se encuentran en el directorio “test”.
    5. La versión de SBT es compatible con las versiones de Scala y Java utilizadas en el proyecto.

Comments are closed.