Es muy común para mí hacer sobrecargas de conveniencia para los métodos. Aquí está un ejemplo de algo que podría hacer:¿Debo duplicar las pruebas de sobrecargas de conveniencia?
public void Encode(string value) {
Encode(value, DefaultEncoding);
}
public void Encode(string value, Encoding encoding) {
// ...
}
estoy empezando a prestar más atención a la unidad de pruebas y métodos de prueba de este tipo presenta algunos obstáculos que no estoy seguro de que confiar en mí mismo para acercarse a solas. El primer y más importante problema es si debería duplicar las pruebas para ambas sobrecargas. Por ejemplo, ambos métodos deberían arrojar ArgumentNullException si el valor es nulo; ¿Es más correcto reconocer que podría ser lógica diferente y escribir dos pruebas o es mejor asumir que las sobrecargas de conveniencia no tienen lógica propia?
También tengo un problema secundario. Mi esquema de nombres es el mismo que el de Roy Osherove: "MemberName_State_ExpectedResult". Si duplico las pruebas, entonces tengo nombres discordantes sin introducir alguna convención de nombres extravagantes. ¿Cómo manejas esto si duplicas las pruebas?
+1 en ambas cuentas. Para una manera simple de verificar el comportamiento del método de conveniencia, vea mi respuesta a esta pregunta. –