Supongamos que se inicia con un método autogenerado-Cómo refactorizar el código de prueba junto con el código de producción?
public void setKey(Key key) {
this.key = key;
}
y escribir una prueba para que
@Test
public void testSetKey()
luego 3 meses a partir de ahora decide que un nombre más apropiado para el método sería changeKeyTo
. Usted refactorizar el código de producción y termina con:
public void changeKeyTo(Key key) {
this.key = key;
}
la vida es buena, sin embargo, el nombre de la prueba se mantuvo sin cambios
@Test
public void testSetKey()
, ¿cómo lidiar con algo como esto? ¿Puede refactorizar el código de prueba automáticamente con su código de producción? ¿El eclipse lo permite?
Posible duplicado de http://stackoverflow.com/questions/3317789/is-it-possible-to-automaticly-rename-the-unit -test-class-when-renomming-the-class – nobeh
@BehroozNobakht, no es un duplicado: se trata de cambiar el nombre de un * método * que también se llama mediante pruebas. Esto es absolutamente necesario; de lo contrario, su código de prueba ya no se compila. Renombrar una prueba * clase * de forma similar a la clase probada es una función agradable de tener, cuya ausencia no causa ningún problema inmediato. Las pruebas de su unidad todavía se están compilando y funcionando perfectamente sin él, solo que es más difícil para usted ver la dependencia lógica entre la clase de prueba y la clase probada. –
Es una pregunta muy buena y reflexiva sobre la profesión, y en un mundo ideal podría sugerir el lugar de los programadores. Una de las cosas en las que hay que pensar es dejar intactos los métodos autogenerados, ya que es agradable tenerlos actualizables con la generación de clases, y hacer un wrapper para eso si quieres "un nombre más apropiado". Pero ese es un punto estrecho; Creo que la pregunta merece una discusión más amplia. – hardmath