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);
}
何が欠けているのかわかりません。どんな助けでもいただければ幸いです。
前もって感謝します。