Sharepoint 2010中Silverlight的编码UI测试

时间:2011-09-29 10:13:51

标签: silverlight sharepoint-2010 coded-ui-tests

我正在为在Sharepoint 2010上运行的系统创建一个Coded UI测试。部分测试序列是创建一个站点; Sharepoint用于创建网站的UI在Silverlight上运行。因此,我需要为Silverlight组件创建一个Coded UI测试,它是开箱即用的Sharepoint的一部分,而不是我们应用程序的一部分。当我尝试录制测试时,收到以下消息:

没有Silverlight控制检测到的位置。验证是否使用版本为4.0或更高版本的Silverlight程序集构建了测试中的应用程序,并且已将对Microsoft.VisualStudio.TestTools.UITest.Extension.SilverlightUIAutomationHelper.dll程序集的引用添加到项目中。有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkId=204562

我有两个问题:

1)如何找出构建针对Sharepoint组件的Silverlight版本?如果它们是针对Silverlight 3.5或更早版本构建的 - 我认为问题是无法解决的?

2)假设前一个问题得到解答 - 我如何让Sharepoint的Silverlight组件引用SilverlightUIAutomationHelper.dll库?这对我来说似乎有问题...

测试机上安装的Silverlight版本为4;安装了Visual Studio Feature Pack 2。

感谢。

2 个答案:

答案 0 :(得分:0)

除非您拥有源代码并且可以重新编译它们,否则无法使SharePoint的Silverlight组件引用自动化帮助程序库。所以第一个问题的答案并不重要。

答案 1 :(得分:0)

您可以修改Sharepoint XAP,只需在其中添加Microsoft.VisualStudio.TestTools.UITest.Extension.SilverlightUIAutomationHelper.dll。你真的不需要代码本身来引用它,它只需要部分包。 XAP文件只是一个zip文件,因此您应该可以修改它。

您必须找到Sharepoint从哪里获取XAP并更改源(显然您不希望在prod框中执行此操作,甚至自动化DLL的许可限制也会阻止您执行此操作)。您还可以编写Fiddler AutoResponder来修改XAP文件,并在它到达浏览器之前添加dll。有关此示例,请查看此AutoResponder: https://bitbucket.org/mamadero/hackingsilverlightdemo/src/2fecb7b59dec/FiddlerAutoResponder