Silverlight 异步单元测试

来源:转载

Silverlight 中的很多操作都是异步的,很多情况下要求单元测试也是异步的,但是介绍异步单元测试的文档很少。通过对 Silverlight Toolkit 中的 Microsoft.Silverlight.Testing 和 Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight 这两个文件的分析以及尝试,终于发现了做异步单元测试的方法,如果需要在 Silverlight 项目中使用异步单元测试,大致的步骤如下:

新建 Silverlight 项目,添加对 Microsoft.Silverlight.Testing.dll 、Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.dll 连个文件的引用,这个不用做过多的介绍。

打开 App.xaml.cs 文件,添加对命名空间 Microsoft.Silverlight.Testing 的引用;找到 Application_Startup 方法, 将应用程序的 RootVisual 改为测试页面,然后可以删除自动生成的 MainPage.xaml 文件,修改好的 Application_Startup 方法如下:

 

新建单元测试类 AsyncTest ,让它继承自 Microsoft.Silverlight.Testing.SilverlightTest 基类, 然后添加 TestClass 标记,最终文件内容如下图所示:

 

添加异步单元测试,假设要测试内容是读取服务端一个文件,然后判断返回的文件内容是否是正确的。添加测试方法,并依此添加两个标记:TestMethod、Asynchronous, 如下所示:

 

添加测试代码如下:

 

最终运行效果如下图:

 

以上就是通过尝试发现的做异步单元测试的方法, 在实际做异步单元测试的时候,下面这几个方法需要留意:

TestComplete

EnqueueWorkItem

EnqueueDelay

EnqueueConditional

EnqueueTestComplete

EnqueueCallback

当然这些方法目前没有官方文档,就不妄下判断了,可以自己尝试一下,应该怎么使用。

本文来自张志敏的博客,原文地址:http://www.cnblogs.com/beginor/archive/2010/03/07/1680179.html

分享给朋友:
您可能感兴趣的文章:
随机阅读: