2010-10-26 6 views
22

Esta pregunta está tangencialmente relacionada con How can I create JUnit stub methods in eclipse? pero no responde mi pregunta específica.Generar topos JUnit para nuevos métodos en clase existente en Eclipse

Suponiendo que tiene una clase de caso de prueba JUnit, si agrega un método a la clase objetivo (o elige probar un método no probado previamente), ¿hay alguna manera de decirle a Eclipse que genere el código para el "nuevo" método (s) en el TestCase existente sin crear una nueva clase de caso de prueba?

Respuesta

2

El ciclo de trabajo habitual con las pruebas unitarias es crear el caso de prueba primero

public void test_new_method() { 
    ClassUnderTest x = new ClassUnderTest(); 
    x.NewMethod(); 
} 

En ese momento Eclipse le dará una advertencia de que el método "newMethod" no existe. Luego simplemente selecciona una "Solución rápida" (Ctrl-1 o Ctrl-2, no estoy seguro) para crear el método que falta en la clase.

+0

Buen punto, pero eso no responde mi pregunta inicial. Eclipse genera los stubs para las nuevas clases de caso de prueba, ¿por qué no puede generar stubs de método para las clases existentes? –

+0

Perdón por no responder la pregunta, pero en Eclipse ellos (quien sea) asumen que estás trabajando en la prueba ... así que primero prueba y luego el código ... Acabo de revisar la ayuda de Eclipse y no pude encontrar la posibilidad de hazlo de la manera que te guste ... lo siento. – khmarbaise

+6

Del libro de "solo te lo facilitaremos si lo haces a nuestra manera". – stu

4
  1. Abra el panel de jerarquía de paquetes.
  2. Navegue hasta la clase que ha modificado.
  3. Haga clic con el botón derecho en el nuevo método.
  4. Seleccione "Generar prueba". El apéndice generado aparecerá en su archivo ClassTest.
+3

¿Está usando algún tipo de complemento? No veo la opción "Generar prueba" en Eclipse usando su procedimiento ... – IcedDante

+6

El complemento se llama [MoreUnit] (http://moreunit.sourceforge.net/) – derio

+0

Cómo MoreUnit puede agregar un nuevo caso de prueba solo Método recientemente agregado en la clase de prueba existente? Intenté, parece que no puedo hacer eso. Para generar una nueva clase de prueba, Eclipse puede hacerlo solo sin MoreUnit. – 5YrsLaterDBA

3

Mi solución.

simplemente pasar por el estándar 'crear casos de prueba JUnit'

Seleccionar archivo para probar. -> Nuevo caso de prueba de Junit

Realice el proceso normal al crear el caso de prueba, pero solo seleccione aquellos para los que desee colocar los nuevos talones.

El archivo se crea con los resguardos, que ahora copio en el archivo de caso de prueba existente. Elimina la clase de archivo de prueba recién creada.

No es la más eficiente, pero más rápida que la 'digitación gruesa' cuando las crea manualmente.

David

+0

Un poco más tedioso de lo que debería ser el proceso, ¡pero funciona para mí por ahora! –

Cuestiones relacionadas