浅谈Silverlight4.0的UI测试

最近在研究Silverlight的UI测试,之前的Silverlight版本对UI测试支持都不是很好,还好现在有了Visual Studio 2010 Feature Pack 2这个东东,这回UI测试就好用多了!下面咱就一步一步的实施:

step1:先建个测试的工程

浅谈Silverlight4.0的UI测试_第1张图片

选择Code UI Test

浅谈Silverlight4.0的UI测试_第2张图片

接下来就不用太详细说,你懂的:)

step2:

就是运行你要测试的工程,或者将这个工程发布也行,用IIS或tc都行。之后的界面应该像这个样子:

浅谈Silverlight4.0的UI测试_第3张图片

注意有个UIMap-Coded UI Test Builder的小界面,它可是必须要有的哦!

step3:

开始测试,点击那个小红球(Start Recording),比如说我们要测试鼠标单击事件,就单击一下地图就行。

step4:生成代码(generate code),此时会在UI测试工程中生成对应的代码。

浅谈Silverlight4.0的UI测试_第4张图片

主要的东西就在UIMap.Designer.cs中,CodedUITest1.cs中只是调用方法。

step5:得到预期的值。这时要用到这个东东了。拖动它找到你想要的

浅谈Silverlight4.0的UI测试_第5张图片

找到你想要的结果就可以放手了,之后会弹出来一个属性框

浅谈Silverlight4.0的UI测试_第6张图片

之后就可以Add Assertion,

浅谈Silverlight4.0的UI测试_第7张图片ok,再点一下generate code就生成预期结果的代码了。

ok,Run,这样就可以了。

看看结果:

浅谈Silverlight4.0的UI测试_第8张图片

为什么会错了呢,答案就是我的页面没有在录制时的初始状态,所以运行前要确认页面在初始状态哦!那就没问题了!

还有个问题,如果报这个错误

No Silverlight controls were detected

就把Microsoft. VisualStudio.TestTools.UI Test.Extension.SilverlightUIAutomationHelper.dll这个类库引到你要测试的工程里!

RealDigit研究的很好,从中获益了。我只是浅谈,希望各路高手指导。
相关文章链接:http://www.cnblogs.com/realdigit/archive/2011/02/18/1957960.html

http://timheuer.com/blog/archive/2010/11/24/coded-ui-available-for-silverlight-4.aspx

才发现一个讲Silverlight UI测试的更好的网站:http://msdn.microsoft.com/zh-cn/library/gg413374
必须马上分享给大家!

还有个Silverlight UI testing with Selenium and Ruby文章(还没研究过):http://www.lostechies.com/blogs/louissalin/archive/2010/08/22/silverlight-ui-testing-with-selenium-and-ruby.aspx

你可能感兴趣的:(silverlight)