Creo que debería hacerse una prueba unitaria con el comportamiento actual y, en los comentarios, agregar la prueba correcta y el comportamiento correcto. Ejemplo:
@Test
public void test() {
// this is wrong, it should be fixed some time
Assert.assertEquals(2, new Calculator().plus(2,2));
// this is the expected behaviour, replace the above test when the fix is available
// Assert.assertEquals(4, new Calculator().plus(2, 2));
}
De esta manera, cuando la solución esté disponible, la compilación fallará, notando la prueba fallida. Cuando vea la prueba, sabrá que cambió el comportamiento y la prueba debe actualizarse.
EDITAR: Como dijo el Capitán Man, en proyectos grandes, esto no se solucionará pronto, pero por el bien de la documentación, la respuesta original es mejor que nada.
Una mejor manera de hacerlo es duplicando la prueba actual, haciendo que el clon afirme lo correcto y @Ignorecon un mensaje, por ejemplo
@Test
public void test() {
Assert.assertEquals(2, new Calculator().plus(2,2));
}
@Ignore("fix me, Calculator is giving the wrong result, see ticket BUG-12345 and delete #test() when fixed")
@Test
public void fixMe() {
Assert.assertEquals(4, new Calculator().plus(2, 2));
}
Esto viene con la convención en su equipo para reducir el número de @Ignorepruebas d. De la misma manera que lo haría al introducir o cambiar la prueba para reflejar el error, excepto que no falla la compilación si esto es crítico para su equipo, como OP dijo que la corrección del error no se incluirá en la versión actual .