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 comoorg.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:
- Agregar un
BlaBlaPluginJUnitMainTab
personalizado extiendePluginJUnitMainTab
- Crear una implementación JUnitProgramBlock personalizada (
BlaBlaJUnitProgramBlock
) - Crear una instancia de
BlaBlaJUnitProgramBlock
en el métodoBlaBlaJUnitPluginTestTabGroup.BlaBlaPluginJUnitMainTab.createProgramBlock()
- Reemplazando
setDefaults
-method (no estoy seguro de si es realmente necesario) enBlaBlaJUnitProgramBlock
-
BlaBlaJUnitProgramBlock
el método initializeForm enBlaBlaJUnitProgramBlock
y ajustando el parámetro allí también.
Llevando al siguiente resultado:
Esta respuesta es casi un error:
Prueba esto:
- 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:
- Seleccione el archivo e invoque
Run As > Run Configurations ...
(es decir, ¡todavía no seleccioneJUnit Plug-in Test
!) - En ese cuadro de diálogo, seleccione una buena configuración de inicio del mismo tipo, y ...
- 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 .