¿Existe una manera fácil de verificar en una prueba unitaria que dos matrices son iguales (es decir, tienen el mismo número de elementos y cada elemento es el mismo?).Afirmar que las matrices son iguales en el marco de prueba de Visual Studio 2008
En Java, usaría assertArrayEquals (foo, bar);
, pero parece que no hay equivalente para C#. Intenté Assert.AreEqual(new string[]{"a", "b"}, MyFunc("ab"));
, pero aunque la función devuelve una matriz con "a", "b" la comprobación sigue fallando
Esto está utilizando Visual Studio 2008 Team Suite, con el marco de prueba integrado de la unidad.
Solo tenga en cuenta lo siguiente, http://stackoverflow.com/questions/5194966/mstest-collectionassert-areequivalent-failed-the-expected-collection-contains contiene los objetos se pueden comparar explícitamente con 'object.Equals' y el 'IEqualityComparer' puede tener que estar definido para que se apruebe una aserción fallida. –
atconway
Ojalá esto dio mensajes más detallados cuando falló. "Diferentes cantidades de elementos" y "Elemento en el índice 0 no coincide" son ligeramente inútiles. * ¿Qué son entonces?! * –
'CollectionAssert.AreEquivalent' (disponible en Visual Studio 2010) ofrece resultados más informativos. Por ejemplo, cuando la cantidad de elementos difiere, el mensaje indica el número esperado y el número real de elementos – Dennie