8

単体テストクラスに3つのテストメソッドがありますが、Visual Studioは2番目のテストのみを実行し、他のテストは無視します

これらは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);

    }
}

では、テストを実行すると、sortTest2のみが実行されますか?これから3つの結果を期待しています。結果1/1に合格しています。TestName:sortTest2。

私が行った他の2つのテストはどうなりましたか?

4

3 に答える 3

6

gillyb、ええ、あなたは正しいと思います。Visual Studioを再起動すると、問題が修正されました。

于 2012-10-28T16:25:04.190 に答える
6

テストの実行が完了した後、テストが「実行されない」と表示されることに気づきました。StackOverflowExceptionが途中でスローされたため、これらのテストは完了しなかったことが判明しました。

于 2015-08-20T11:41:08.853 に答える
1

これで何度も私を悩ませてきたのは、テストプロジェクトがソリューション構成に組み込まれていることが確認されていないことです。

于 2017-05-24T14:17:43.400 に答える