Sí, los nombres del código bajo prueba (métodos, propiedades, lo que sea) pueden cambiar, pero sostengo que las pruebas existentes deberían fallar si cambian las expectativas. Ese es el verdadero valor de tener pruebas bien construidas, sin leer detenidamente una lista de nombres de pruebas. Dicho esto, los métodos de prueba bien nombrados son excelentes herramientas para atraer a nuevos desarrolladores, ayudándoles a encontrar "documentación ejecutable" con la que puedan patear los neumáticos del código existente, para mantener actualizados los nombres de los métodos de prueba solo ya que mantendría al día las afirmaciones hechas por los métodos de prueba.
Indico mi prueba utilizando el siguiente patrón. Cada accesorio de prueba intenta enfocarse en una clase y generalmente es prueba de nombre {ClassUnderTest}. Yo nombro cada método de prueba {MemberUnderTest} _ {Afirmación}.
[TestFixture]
public class IndexableFileTest
{
[Test]
public void Connect_InitializesReadOnlyProperties()
{
// ...
}
[Test,ExpectedException(typeof(NotInitializedException))]
public void IsIndexable_ErrorWhenNotConnected()
{
// ...
}
[Test]
public void IsIndexable_True()
{
// ...
}
[Test]
public void IsIndexable_False()
{
// ...
}
}
¡Así es como a mí me gusta! –