2009-11-21 15 views
9

Quiero ejecutar las pruebas de mi unidad automáticamente cuando guardo mi proyecto Eclipse. El proyecto se crea automáticamente cada vez que guardo un archivo, por lo que creo que esto debería ser posible de alguna manera.Ejecutar JUnit automáticamente al crear el proyecto Eclipse

¿Cómo lo hago? ¿Es la única opción realmente obtener un script ant y cambiar la construcción del proyecto para usar el script ant con los objetivos compilación y compilar?

actualización Voy a tratar 2 enfoques diferentes ahora:

  1. la ejecución de un constructor adicional para mi proyecto que ejecuta la tarea ant prueba (I tiene una secuencia de comandos de hormigas de todos modos)
  2. ct-eclipse, recomendado por Thorbjørn

Respuesta

7

De seguro es imprudente ejecutar todas las pruebas, porque podemos tener, por ejemplo, 20,000 pruebas, mientras que nuestro cambio solo podría afectar, digamos 50, entre las cuales se encuentran las pruebas de la clase que hemos cambiado y las pruebas de clases que colabora con nuestra clase

Hay un plugin no deseado llamado infinitetest http://improvingworks.com/products/infinitest/ que ejecuta solo algunas pruebas (relacionadas con la clase que hemos cambiado) justo después de guardar los cambios. También se integra muy bien con el editor (usando anotaciones) y la vista de problemas, mostrando pruebas que no pasan, como errores.

+0

de acuerdo. Inifinitest es el mejor que he encontrado, y uno de los únicos en desarrollo activo. – awied

+0

Después de pensarlo, me gustaría ver un complemento ejecutar las últimas pruebas que comencé manualmente. Eso ayudaría mucho ahora. Inifitiest se ve bien, tal vez lo intente. Pero el pago no está recibiendo prioridad ... ;-) – cringe

+1

Puede probar http://www.junitmax.com/ como alternativa pagada. – fastcodejava

4

Right click on your project > Properties > Builders > New, y allí agregue su hormiga ant builder.

Pero, en mi opinión, no es prudente ejecutar las pruebas unitarias en cada guardado.

2

Vea si Eclipse tiene un complemento para Infinitest.

También consideraría TestNG como una alternativa a JUnit. Tiene muchas características que pueden ser útiles para dividir las clases de prueba unitarias en grupos de ejecución más cortos y más largos.

+0

De hecho, tiene un complemento que funciona realmente bien. Las pruebas se ejecutan rápidamente y aparecen como si tuvieran errores de copia de seguridad directamente en el IDE –

1

creo que busca http://ct-eclipse.tigris.org/

He experimentado con el concepto anterior, y mi conclusión personal era que para que esto sea útil que necesita una gran cantidad de pruebas que requieren tiempo. Personalmente, ahorro con mucha frecuencia, así que esto sucedería con frecuencia, y no me pareció una ventaja. Puede ser diferente para ti.

En su lugar, analizamos el problema y configuramos un "servidor de compilación" que mira nuestro repositorio de CVS y crea proyectos a medida que cambian. Si la compilación falla o fallan las pruebas , se nos notifica rápidamente para que podamos remediarlo.

Es como siempre una cuestión de gusto lo que funciona para usted. Esto es lo que he encontrado.

+0

Ah, claro. Hudson está haciendo integración, pero me resulta un poco molesto hacer clic en Eclipse solo para comenzar las pruebas después de cambiar. ;-) Tal vez el plugin debería ser tan ingenioso como para ejecutar las pruebas que prueban la clase que cambié. Ejecutar todas las pruebas en cada cambio sería demasiado molesto. – cringe

+0

considere una acción de guardado. –

+0

Solo una pregunta: usted ejecuta las pruebas de su unidad localmente antes de registrarse, ¿verdad? ¿Tienes una regla práctica cuando los ejecutas? ¿Después de pensar que tu edición podría romper algo? ¿O solo una vez antes de comprometerse? – cringe

1

Recomendaría Inifinitest para la situación descrita. Infinitest es hoy en día un producto con licencia GPL v3. Sitio de actualización de Eclipse: http://infinitest.github.com

Cuestiones relacionadas