1

Visual Studio 2012 プロジェクトに MPI.Net を使用しています。すべての単体テスト (標準の Microsoft 単体テスト プロジェクト) は、実行すると失敗しますが、デバッグすると成功します。単一のクラス (「foo」を返すだけ) を持つダミー プロジェクトを作成し、問題を再現しました。実際に何かをする前に、MPI 環境が完成しているようです。タイミングの問題かどうかを確認するために、適切な場所に Sleep を追加しようとしましたが、別のもののようです。誰もこれを経験したことがありますか?

私のテスト方法は次のとおりです。

[TestMethod]
    public void TestMethod1()
    {
        string[] args = null;
        using (MPI.Environment mpiEnv = new MPI.Environment(ref args))
        {
            if (MPI.Environment.Finalized)
            {
                throw new Exception("mpi finalized");
            }
            else
            {
                MPIdotNetUnitTestIssue.Class1 bar = new MPIdotNetUnitTestIssue.Class1();
                Assert.AreEqual("foo", bar.Foo());
            }
        }
    }

テストが「実行」されている場合は例外が発生し、ブレークポイントがなくても「デバッグ」されている場合はテストに合格します。

4

0 に答える 0