2011-08-24 13 views
7

Utilizando Eclipse (Helios), podría crear un archivo de prueba JUnit ClassATest.java del archivo fuente ClassA.java utilizando New -> JUnit Test Case -> Class under test ..., luego elegiré todos los métodos de ClassA para ser probado.Eclipse: cómo actualizar un archivo de prueba JUnit con el método recién agregado en el archivo fuente?

Si más adelante agregamos algunos métodos más a ClassA, ¿cómo podemos reflejar fácilmente esta adición en ClassATest? (No copiar/pegar por favor).

Respuesta

2

Una solución es utilizar MoreUnit

Con MoreUnit instalado en Eclipse, se puede hacer clic a la derecha en el método recién agregado (y aún no probado), y elija "Generar prueba"

Por supuesto, si uno siempre sigue el estilo de escritura-prueba-antes-escritura-método, entonces esta solución no es necesaria. Sin embargo, en realidad, a veces no tienes una idea clara de lo que te gustaría hacer, en ese caso tendrías que codificar algún método, jugar con él, luego volver a pensar y codificar hasta que estés satisfecho con el código y quieras para hacerlo estable agregando prueba unitaria.

+0

¿Cómo MoreUnit puede agregar un nuevo método de prueba para un método recién creado en mi clase a la clase de prueba junit existente? Esa prueba generará una nueva clase de prueba, pero no un nuevo método de prueba sobre la clase de prueba existente. Me falta algo? Estoy usando Eclipse Luna – 5YrsLaterDBA

+0

@ 5YrsLaterDBA: en Kepler genera un nuevo método de prueba en una clase de prueba existente. Lo estoy viendo con TestNG. ¿Quizás el autor de MoreUnit aún no haya publicado el lanzamiento de Luna? – CuongHuyTo

0

Debe considerar la creación de un conjunto de pruebas JUnit que ejecutará todas las pruebas dentro de las clases que especifique. Por lo tanto, agregar nuevos casos de prueba es tan simple como crear una nueva clase y agregarla a la lista @ Suite.SuiteClasses (como se ve a continuación).

Aquí hay un ejemplo.

Ejemplo JUnit Test Suite Clase: clase

@RunWith(Suite.class) 
@Suite.SuiteClasses({ 
    TestClassFoo.class 
}) 
public class ExampleTestSuite {} 

caso de prueba Ejemplo:

public class TestClassFoo { 
    @Test 
    public void testFirstTestCase() { 
     // code up test case 
    } 
} 
+1

Hola Uperez, mi pregunta es sobre la actualización de TestClassFoo automáticamente si hay NUEVOS métodos dentro de ClassFoo. – CuongHuyTo

Cuestiones relacionadas