Ho 3 metodi di prova della mia classe unit test, ma Visual Studio viene eseguito solo il secondo test, ignorando gli altriVisual Studio non viene eseguito tutti i test di unità in una classe di test
Questi sono i metodi di prova 3:
[TestClass()]
public class InsertionSortTest
{
[TestMethod()]
public void sortTest()
{
InsertionSort target = new InsertionSort(); // TODO: Initialize to an appropriate value
int[] n = new int[] { 2, 1, 4 };
int[] nExpected = new int[] { 1, 2, 4 };
target.sort(ref n);
CollectionAssert.AreEqual(nExpected, n);
}
[TestMethod()]
public void sortTest2()
{
InsertionSort target = new InsertionSort(); // TODO: Initialize to an appropriate value
int[] n = new int[] { 1, 2 };
int[] nExpected = new int[] { 1, 2 };
target.sort(ref n);
CollectionAssert.AreEqual(nExpected, n);
}
[TestMethod()]
public void sortTest3()
{
InsertionSort target = new InsertionSort(); // TODO: Initialize to an appropriate value
int[] n = new int[] { 1, 2 };
int[] nExpected = new int[] { 1, 2 };
target.sort(ref n);
CollectionAssert.AreEqual(nExpected, n);
}
}
Quindi quando eseguo il test solo sortTest2 viene eseguito? Mi aspetto 3 risultati da questo. Sto ottenendo risultati 1/1 passati. TestName: sortTest2.
Che cosa è successo con gli altri due test che ho fatto?
Sembra che stia semplicemente eseguendo una vecchia compilation o qualcosa del genere ... Prova a pulire la cache e rieseguire i test – gillyb
Come parte, segui le convenzioni di denominazione .NET e dai il nome ai metodi di test in modo che sia chiaro quale scenario sono " riordinamento (Probabilmente non hai bisogno di 'ref', o ...) –