unit test run only one new intellij idea java unit-testing intellij-idea junit

java - run - new junit test intellij



Clase no encontrada: Conjunto de pruebas vacĂ­o en IntelliJ (30)

Estoy empezando el programa de ciencias de la computación en mi universidad y tengo algunos problemas con IntelliJ. Cuando intento ejecutar pruebas unitarias, recibo el mensaje

Process finished with exit code 1 Class not found: "edu.macalester.comp124.hw0.AreaTest"Empty test suite.

También veo un mensaje titulado "No se encontraron pruebas" en el lado izquierdo de mi pantalla. Mi código de prueba está aquí:

package edu.macalester.comp124.hw0; import org.junit.Test; import static org.junit.Assert.*; public class AreaTest { @Test public void testSquare() { assertEquals(Area.getSquareArea(3.0), 9.0, 0.001); } @Test public void testCircle() { assertEquals(Area.getCircleArea(3.0), 28.2743, 0.001); } }

Y mi código de proyecto está aquí:

package edu.macalester.comp124.hw0; import java.lang.Math; public class Area { /** * Calculates the area of a square. * @param sideLength The length of the side of a square * @return The area */ public static double getSquareArea(double sideLength) { // Has been replaced by correct formula return sideLength * sideLength; } /** * Calculates the area of a circle. * @param radius The radius of the circle * @return The area */ public static double getCircleArea(double radius) { // Replaced by correct value return radius * 2 * Math.PI; } }

¿Cómo puedo hacer que mis pruebas funcionen? Gracias por adelantado. Estoy usando la versión más reciente de IntelliJ IDEA CE.


¿Su prueba requiere un dispositivo Android (emulador o hardware)?
Si es así, se llama "prueba instrumentada" y reside en "nombre-módulo / src / androidTest / java /".
Si no, se llama "prueba de unidad local" y reside en "nombre-módulo / src / test / java"

https://developer.android.com/training/testing/start/index.html

Obtuve el mismo error porque había escrito una prueba de unidad local, pero se colocó en la carpeta para pruebas instrumentadas. Mover la prueba de unidad local a la carpeta "src / test / java" me lo arregló.


Curiosamente, me he enfrentado a este problema muchas veces debido a diferentes razones. Por ejemplo, invalidar la caché y reiniciar también ha ayudado.

Por último, lo arreglé corrigiendo mi ruta de salida en Archivo -> Estructura del proyecto -> Proyecto -> Salida del compilador del proyecto a: absolute_path_of_package / out

por ejemplo: / Users / random-guy / myWorkspace / src / DummyProject / out


El mismo problema aquí usando IDEA 15.0.6, y nada ayudó, excepto cuando cambié el nombre del paquete en el que estaba la clase de prueba. Luego lo cambié a su nombre original y aún funcionó, por lo que la acción de cambio de nombre podría haber borrado algo de caché.


Eliminar .idea y volver a importar el proyecto SBT resolvió este problema para mí.


En Android Studio 3.0 +, a veces las pruebas de IU se interpretan de alguna manera como pruebas unitarias y no solicita la selección de implementación de destino. Puede ir a Editar configuración y marcarlo como una prueba de integración y comenzaría a funcionar


En mi caso hubo un problema con el nombre de la prueba :).

Si el nombre era: dummyNameTest , no se obtienen pruebas, pero en el caso testDummyName todo estaba bien


En mi caso, IntelliJ no compiló las fuentes de prueba por una extraña razón. Simplemente modifiqué la configuración de compilación y agregué la clean test-compile objetivos clean test-compile en la sección Before launch


En mi caso, el problema se solucionó yendo a mi build.gradle y cambiando

dependencies { testImplementation ''junit:junit:4.12'' }

a

dependencies { testCompile ''junit:junit:4.12'' }


En mi caso, tenía todo lo demás en el lugar correcto, pero estaba trabajando en una biblioteca de Java con Kotlin . Acabo de olvidar aplicar el complemento:

apply plugin: ''kotlin-android''

Y ahora está funcionando como se esperaba ahora.


En su estructura de proyecto Maven src / main / java, haga clic con el botón derecho en el directorio java y seleccione la opción Marcar directorio como -> Rooteo de fuentes

Del mismo modo, haga lo mismo con el directorio de prueba, así que: src / test / java haga clic derecho en el directorio de java y seleccione la opción Marcar directorio como -> Raíz de fuentes de prueba

Trabajó para mi :-)


Entonces, mi problema aquí fue con los nombres de las carpetas. Había llamado a mi carpeta de códigos Clases 2016/2017, que a IntelliJ no le gustaba. Simplemente elimine la barra oblicua (u otro personaje ofensivo en la ruta), vuelva a importar el proyecto, ¡y estará listo!


Estaba obteniendo el mismo error. Mi dispositivo no estaba conectado a Android Studio. Cuando me conecté al estudio. Funciona. Esto resuelve mi problema.


Esto puede suceder (al menos una vez para mí;) después de instalar la nueva versión de IntelliJ y los complementos de IntelliJ aún no se han actualizado.

Puede que tenga que hacer manualmente Check for updates… desde el menú Ayuda de IntelliJ.


Esto también podría suceder si su carpeta de prueba se ha importado como un módulo separado (se muestra un pequeño cuadrado en el icono de la carpeta en la vista del proyecto).
Elimine el módulo seleccionando la carpeta de prueba en la vista del proyecto y presione SUPR .
Entonces comienza tu prueba.
Si aparece un cuadro de diálogo emergente con un mensaje de error, que no se ha seleccionado ningún módulo, especifique su módulo raíz en el menú desplegable.


Esto también sucederá cuando su módulo y / o proyecto-jdk no estén configurados correctamente.


Intenté todas las soluciones pero ninguna de ellas me ayudó. Al final ejecuté la prueba en modo de depuración y ... comenzó a funcionar. Tal vez el caché de algún experto fue despejado. Es difícil de decir. Funciona. Prueba mvn test -X


Para mí fue porque mi proyecto se estaba compilando en un directorio fuera del proyecto. En las rutas, las rutas de salida eran / producción / nombre_proyecto y / prueba / nombre_proyecto, que las colocaba en C: / producción / nombre_proyecto. Cambiarlos a la ruta completa del proyecto permitió a mis pruebas acceder a los archivos de la clase.


Probablemente se deba a que la carpeta no está configurada como fuente de prueba, lo que se puede hacer a través de Configuración del módulo> Módulos.


Reimportar proyecto o módulo puede resolver el problema. Resolví este problema al cambiar el nombre del paquete al desarrollar. Pero la ruta de salida y la ruta de salida de prueba es la ruta anterior. Entonces intellij no puede encontrar la clase desde el camino anterior. Entonces, la forma más fácil es corregir la ruta de salida y la ruta de salida de prueba.


Si el proyecto tiene un problema de compilación, entonces las pruebas podrían no ejecutarse. En primer lugar, cree el proyecto como Build -> Build Project. Después de una compilación exitosa, vuelva a ejecutar la prueba.

Si nada funciona, simplemente cierre la ventana del proyecto y elimine el proyecto y vuelva a importarlo como proyecto Gradle / Maven, que configurará todo para usted al anular los archivos creados por IntelliJ existentes. Esto eliminará la caché no válida creada.


Simplemente haga clic con el botón derecho del mouse en el archivo en la ventana Proyectos y seleccione

"Ejecute su prueba ".

Ahora todo comienza bien, probablemente porque la configuración de ejecución defectuosa se está reconstruyendo nuevamente.


También tuve el mismo problema en mi entorno (MacOS). Estaba usando IntelliJ 2016. Tenía un proyecto de biblioteca Java (gradle).

Lo que hice fue

  1. Proyecto abierto / exportado desde una versión anterior de IntelliJ (como IntelliJ14). Esto sucedió con éxito y lo verifiqué haciendo el proyecto y ejecutando un caso de prueba.
  2. Luego importé ese proyecto nuevamente a través de IntelliJ 2016. Después de eso funcionó bien (compilación y ejecución de casos de prueba).

Tenía el mismo mensaje. Tuve que eliminar la configuración Run / Debug.

En mi caso, ejecuté la prueba de la unidad como una prueba local antes. Después de eso, moví mi prueba al paquete androidTest e intenté ejecutarlo nuevamente. Android Studio recordó la última configuración de ejecución, por lo que intentó ejecutarla nuevamente como una prueba de unidad local que produjo el mismo error.

Después de eliminar la configuración y ejecutar la prueba nuevamente, generó una nueva configuración y funcionó.


Tuve el mismo problema (Android Studio 3.2 Canary 4) y probé la mayoría de las sugerencias descritas en otras respuestas, sin ningún éxito. Tenga en cuenta que esto sucedió después de mover el archivo de test a la carpeta androidTest . Todavía se mostraba en configuraciones de ejecución como prueba en lugar de prueba instrumentada.

Finalmente termino creando un nuevo archivo:

  1. Cree una nueva clase de prueba instrumentada con un nombre diferente.
  2. Copie todo el código de su clase.
  3. Ejecutarlo.
  4. Eliminar la clase anterior.
  5. Cambie el nombre de la nueva clase al nombre deseado.

Tuve el mismo problema y la reconstrucción / invalidación de caché, etc.no funcionó. Parece que eso es solo un error en Android Studio ...

Una solución temporal es simplemente ejecutar sus pruebas unitarias desde la línea de comando con:

./gradlew test

Ver: https://developer.android.com/studio/test/command-line.html


Tuve el mismo problema. En mi caso, tuve algunas clases de prueba en un paquete / carpeta fuera de la carpeta principal. Pero cuando revisé la configuración Ejecutar, siempre estaba tratando de buscar clases dentro de la carpeta principal (y no mis paquetes fuera de main). Entonces, si ese es el caso, debe mover sus paquetes a donde apunta la configuración Ejecutar. O cambie la configuración de ejecución para que apunte a sus paquetes.


Tuve el mismo problema. Reconstruí el proyecto y me ayudó.

Vaya a Compilar -> Proyecto de reconstrucción

Después de eso, si está utilizando la herramienta Maven, le recomiendo usar la opción Reimportar todos los proyectos Maven


Si no ayuda, pruebe otras posibles soluciones:

  • Vaya a Archivo -> Invalidar cachés / reiniciar -> Invalidar y reiniciar

o:

  • En su estructura de proyecto Maven src / main / java, haga clic con el botón derecho en el directorio java y seleccione la opción Marcar directorio como -> Rooteo de fuentes

    Del mismo modo, haga lo mismo con el directorio de prueba , así que: src / test / java haga clic derecho en el directorio de java y seleccione la opción Marcar directorio como -> Raíz de fuentes de prueba

o:

  • Vaya a Ejecutar -> Editar configuraciones y en la sección JUnit elimine las configuraciones de prueba. Aplicar los cambios. Luego, intente ejecutar sus pruebas. La nueva configuración debe crearse automáticamente.

o:

  • Vaya a Archivo -> Estructura del proyecto , seleccione Módulos , luego seleccione su módulo adecuado y vaya a la pestaña Rutas .
    Consultar opciones:
    Botón de radio Se debe seleccionar la ruta de salida de compilación del módulo de uso .

    La ruta de salida debe estar dentro de su proyecto. También la ruta de salida de prueba debe ser un directorio dentro de su proyecto. Por ejemplo, puede verse de manera similar:
    Ruta de salida: C: / ruta / a / su / módulo / suMódulo / objetivo / clases
    Ruta de salida de prueba: C: / ruta / a / su / módulo / suMódulo / objetivo / clases de prueba

    Excluir las rutas de salida deben estar deseleccionadas.

Tuve la misma pregunta cuando importé un jar de Maven y, posteriormente, causé el error de empty-test-suite .

En mi caso, fue porque el experto restableció los archivos del módulo. Lo que resolví borrando mi configuración predeterminada:

  1. Estructura de proyecto abierta con acceso directo shift - ctrl - alt - s

  1. Mire Módulos> Fuentes y complete el paquete de Fuentes o el Paquete de prueba.

Tuve un problema similar después de comenzar un nuevo proyecto IntelliJ. Descubrí que la "ruta de salida de compilación del módulo" para mi módulo no se especificó correctamente. Cuando asigné la ruta en la "ruta de salida de compilación" del módulo a la ubicación adecuada, el problema se resolvió. La ruta de salida de compilación se asigna en la configuración del proyecto. En Módulos, seleccione el módulo involucrado y seleccione la pestaña Rutas ...

Pestaña Rutas en la Configuración del proyecto | Diálogo de módulos

... Envié la salida del compilador a una carpeta llamada "salida" que está presente en la carpeta principal del Proyecto.


fui a

File -> Invalidate Caches/Restart...

y luego funcionó para mí