Tengo que reiniciar IDE para ejecutar testings

Extraño error con Android Studio 2.2 cuando ejecuto una testing individual directamente en IDE – Tendré "No se encontraron testings" o ejecutaré mi testing previamente comstackda.

Ejemplo:

@Test fun testyTest() { } 

Crearé esta testing y obtendré el post "No se encontraron testings". ¡Entonces reinicio, y la testing se encuentra! Obviamente, la testing anterior pasa porque está vacía. Luego, quiero que mi testing falle. Entonces tiro manualmente una exception y agrego una línea de código, a continuación.

 @Test fun testyTest() { throw RuntimeException() } 

Ahora vuelvo a comstackr, y esta testing también pasa, porque IntelliJ por alguna razón ha guardado en caching la testing anterior y la vuelve a ejecutar. Para que esta testing falle correctamente, debo reiniciar el IDE.

Alguien sabe lo que está pasando? Nota: estoy usando bastante a Kotlin en este proyecto.

EDIT 2: Esta es una testing de JVM (no android, src/test/java ) en un proyecto de biblioteca android.

EDITAR: aquí hay una class de testing completa

 package com.example.zak import org.junit.Before import org.junit.Test class ExampleTest { @Before fun setUp() { } @Test fun testyTest() { //throw RuntimeException() } } 

Encontré la solución … el problema solo ocurre cuando hay una variante de conflicto de selección. Eliminar el conflicto solucionó el problema.

enter image description here

Comtesting si tienes todas estas dependencies:

 dependencies { compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" testCompile 'junit:junit:4.11' testCompile "org.jetbrains.kotlin:kotlin-test-junit:$kotlin_version" } 

Además, como está utilizando Kotlin , deshabilite completamente la Instant Run en File -> Preferences .

EDITAR: Estás hablando de testings en la biblioteca: los modules y project tienen estas dependencies y una configuration adecuada.

Parece que después de la reconstrucción de Gradle, la testing funciona bien.

Encontré esta descripción de error en el sistema de seguimiento de errores JetBrains IntelliJ. Aquí está la URL:

https://youtrack.jetbrains.com/issue/IDEA-149275

Discute un cambio que se realizó en la carga de classs que puede afectar la ejecución de la testing de Junit. Se sugiere una solución agregando una línea al file de configuration options.xml. Aquí hay una solución de ejemplo para los cuadros de Windows: cámbielos según sea necesario para su plataforma. La versión de Android a continuación es la versión 2.2 actual:

1) salir del estudio de Android

2) vaya al directory config / options para su versión de Android:

por ejemplo, C:\Users\YourNameHere\.AndroidStudio2.2\config\options

3) luego agregue la línea " <property name="idea.dynamic.classpath.jar" value="false" /> " dentro del bloque de componentes del file options.xml:

 <component name="PropertiesComponent"> <property name="idea.dynamic.classpath.jar" value="false" /> 

Inicie Android Studio e intente ejecutar testings locales de Junit.

Supongo que usas gradle en tu proyecto? Tenía exactamente el mismo problema y la solución fue utilizar gradle para ejecutar testings (dentro de la list de tareas de gradle) en lugar de usar el menu (hacer clic con el button derecho en el file de testing y ejecutar las testings).

  • Cómo fusionar 2 flujos separados, almacenar los datos rellenos y subscribirlos después de un time corto
  • ¿Cómo lidiar con los límites generics migrando de Java a Kotlin?
  • El uso de más es igual al operador con bytes
  • Mapa Mutable no anulable
  • Kotlin delegando a un futuro
  • Pasando lambda como argumento en Kodein
  • Observa Inyectar error final privado
  • Kotlin recibe el tipo de cadena
  • Encuadernación en map con KClass Type
  • Dividir algorithm y ver parte usando un Patrón de estrategia en Kotlin
  • Multiplicación de Kotlin entre los errores de flotación que aceptan nulos y los que no admiten nulos incluso con verificación nula