¿Cómo puede fallar esta prueba?
[TestMethod]
public void Get_Code()
{
var expected = new List<int>();
expected.AddRange(new [] { 100, 400, 200, 900, 2300, 1900 });
var actual = new List<int>();
actual.AddRange(new [] { 100, 400, 200, 900, 2300, 1900 });
Assert.AreEqual(expected, actual);
// Assert.AreSame(expected, actual) fails
// Assert.IsTrue(expected.Equals(actual)) fails
}
c#
visual-studio-2010
unit-testing
mstest
Ray Cheng
fuente
fuente
CollectionAssert.AreEquivalent
en su lugar msdn.microsoft.com/en-us/library/ms243779.aspxCollectionAssert.AreEqual
puede ser notablemente más lento queAssert.IsTrue...SequenceEqual
Supongo que esto ayudará
fuente
Si desea verificar que cada uno contiene la misma colección de valores, entonces debe usar:
Editar:
fuente
Intenté las otras respuestas en este hilo, y no funcionaron para mí y estaba comparando colecciones de objetos que tenían los mismos valores almacenados en sus propiedades, pero los objetos eran diferentes.
Llamada de método:
Método para comparaciones:
fuente
Equals
método yCollectionAssert
funcionará.esta prueba compara una entrada de fecha, verifica si es un año bisiesto, si es así, genera 20 años bisiestos a partir de la fecha ingresada, si no, emite los próximos 20 años bisiestos, myTest.Testing se refiere a la instancia myTest que a su vez llama a los valores de una Lista llamada Prueba que contiene los valores calculados requeridos. parte de un ejercicio que tuve que hacer.
fuente
//Actuar
//Afirmar
fuente
Afirmaciones fluidas hace profundas comparaciones de matrices
actualArray.Should().BeEquivalentTo(expectedArray)
fuente