1

我正在尝试将 NUnit 集成到我的 windows phone 项目中以测试异步 Web 服务调用。我指的是 NUnitTestRunnerWP7 dll。这就是我所做的。

但是异步回调方法是在 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