Tengo un caso de prueba donde agrego una entidad, la actualizo y elimino la misma. Por lo tanto, el orden de ejecución es importante aquí. Yo quiero que sea:Especificar el orden de ejecución en el caso de prueba JUnit
- Crear
- actualización
- Eliminar
Extrañamente, por sólo un caso de prueba (de 15), JUnit lo ejecuta en el siguiente orden:
- Eliminar
- actualización
- Crear.
¿Cómo le digo a JUnit que las ejecute en un orden específico? En otros casos, JUnit funciona totalmente bien (ejecutándose en serie). ¿Y por qué JUnit se comporta de forma extraña en este caso?
Relevante siguiente fragmento de código:
private static Date date;
private static int entity;
static Parking p;
public ParkingTests(String name) {
super(name);
}
public void testAdd() throws Exception {
//Add code here
}
public void testUpdate() throws Exception {
//update code here
}
public void testDelete() throws Exception {
//delete code here
}
}
Se pone más raro. Ejecuto muchos casos de prueba como parte de un conjunto. Si solo ejecuto el caso de estacionamiento, la orden se mantiene. Si lo ejecuto junto con otros, a veces se mantiene, ¡a veces no!
¿Puedes mostrar el código fuente de esta clase? –
Un caso de prueba sería uno de los métodos en una clase de prueba. Hacer que sus pruebas dependan de un cierto orden de ejecución no es una buena práctica, como se detalla aquí: http://stackoverflow.com/q/3693626/422353 – madth3
Sí, lo leí y me di cuenta de que las pruebas unitarias, en el mundo ideal, no debe ejecutarse en un orden específico. Lamentablemente, así es como funcionan las cosas aquí. Una cabina no se puede eliminar antes de crearse y penalizarse. Entonces el orden se vuelve importante. – crazyaboutliv