1

NUnitをWindowsPhoneプロジェクトに統合して、非同期Webサービス呼び出しをテストしようとしています。NUnitTestRunnerWP7dllを参照しています。これが私がしたことです。

ただし、非同期コールバックメソッドはAssertステートメントの後に呼び出されるため、機能しません。コールバック後にアサートを実行するにはどうすればよいですか?失敗したアサーションをコールバックに書き込むと、アプリケーションがクラッシュします。

[Test]
public void TestAsyncFunc(){
        string result;
        ManualResetEvent manualReset = new ManualResetEvent(false);
        MyWebServiceClient client = GetMyWebServiceClient(); //added a service reference for asmx services
        client.LoginCompleted += delegate(object sender, EventArgs args)
        {
            result = args.Result.ToString();
            manualReset.Set();
        };
        client.LoginAsync("username", "password");
        if (!manualReset.WaitOne(5000))
            Assert.Fail();

        Assert.AreEqual("", result);
    }

何が欠けているのかわかりません。どんな助けでもいただければ幸いです。

前もって感謝します。

4

0 に答える 0