works test how generate example create cases automatically java eclipse junit eclipse-plugin ide

java - test - junit eclipse install



Cambiar el "Programa para ejecutar" predeterminado en la configuraciĆ³n de inicio de Eclipse (4)

de vez en cuando estoy lanzando pruebas JUnit desde dentro de Eclipse usando

Ejecutar como> JUnit Plug-in Test

Por defecto, Eclipse supone que está ejecutando algo que requiere un banco de trabajo y elige en la sección "Principal" de la configuración de inicio

LaunchConfig> Principal> Programa para ejecutar> Ejecutar una aplicación> org.eclipse.ui.ide.workbench

Puedo entender por qué esta es la opción predeterminada, pero para mí (y para todos en nuestro equipo), este nunca es el caso. Siempre necesitamos ejecutar nuestras pruebas de plug-in JUnit como

LaunchConfig> Principal> Programa para ejecutar> Ejecutar una aplicación> [Sin aplicación] Modo sin cabeza

¿Cómo cambio este comportamiento predeterminado? Actualmente estoy usando Eclipse 4.4.


si estás buscando un atajo para mayor comodidad, eclipse recuerda la última ejecución. Después de usar ejecutar como y guardar la configuración de ejecución de ur, simplemente use el botón "Ejecutar como" en la barra de herramientas. además este eclipse viene con sabor para probadores, puedes verificarlo. Además, ya que está hablando de pruebas unitarias, vea si puede hacer uso de la compilación de hormigas o incluso mejor convirtiendo a un proyecto basado en maven. Maven tiene soporte integrado para pruebas.


Parece haber una heurística simple y efectiva en su lugar, que decide si una prueba JUnit Plug-in debe ejecutarse sin cabeza o con una aplicación:

Asegúrese de que el complemento que contiene sus pruebas no tenga dependencias de nada de org.eclipse.ui .

  • Sin esa dependencia [No Application - Headless Mode] se selecciona de forma predeterminada para las configuraciones de inicio recientemente creadas.
  • Con esa dependencia, el valor predeterminado es Run a product , con st como org.eclipse.platform.ide preseleccionado.

Parece una LaunchConfiguration -Extension personalizada es un intento de solución viable. Lo que hice fue crear una nueva LaunchConfiguration -Extension, que es 99.999% de compilación en JUnitLaunchConfiguration . Solo tuve que agregar una costumbre

BlaBlaJUnitPluginTestLauncher extends launching.JUnitLaunchConfigurationDelegate

que anula el

launch(ILaunchConfiguration, String, ILaunch, IProgressMonitor)

método para ajustar los parámetros de la aplicación de acuerdo a nuestras necesidades.

BlaBlaJUnitPluginTestTabGroup extends org.eclipse.pde.ui.launcher.JUnitTabGroup

Para poder inicializar el diálogo LaunchConfig con el parámetro predeterminado, tuve que:

  1. Agregar un BlaBlaPluginJUnitMainTab personalizado extiende PluginJUnitMainTab
  2. Crear una implementación JUnitProgramBlock personalizada ( BlaBlaJUnitProgramBlock )
  3. Crear una instancia de BlaBlaJUnitProgramBlock en el método BlaBlaJUnitPluginTestTabGroup.BlaBlaPluginJUnitMainTab.createProgramBlock()
  4. Reemplazando setDefaults -method (no estoy seguro de si es realmente necesario) en BlaBlaJUnitProgramBlock
  5. BlaBlaJUnitProgramBlock el método initializeForm en BlaBlaJUnitProgramBlock y ajustando el parámetro allí también.

Llevando al siguiente resultado:


Esta respuesta es casi un error:

Prueba esto:

  1. Cree y configure manualmente una configuración de inicio "buena".

La próxima vez que desee iniciar una prueba que aún no tenga una buena configuración de inicio:

  1. Seleccione el archivo e invoque Run As > Run Configurations ... (es decir, ¡todavía no seleccione JUnit Plug-in Test !)
  2. En ese cuadro de diálogo, seleccione una buena configuración de inicio del mismo tipo, y ...
  3. A continuación, haga clic en New Launch Configuration (esquina superior izquierda)

Ahora la configuración recién creada debe "heredar" los valores configurados de la buena configuración.

La verdad es:

  • Puede duplicar una configuración de inicio existente (lo que le permite seleccionar manualmente la prueba para iniciar)
  • El equipo Debug una vez tuvo planes para admitir el lanzamiento de plantillas de configuración .