SliverLight自动化测试

发表于:2011-05-12来源:不详作者:领测软件测试网采编点击数: 标签:
性能测试方面: 1. 可以使用LoadRunner11.0,LR11.0支持Sliverlight的性能测试,压力测试,负载测试等。 UI测试方面: 1. 开发人员可以使用VS2010自带的Test来测试SliverLight。但是要安装 en_visual_studio_2010_fp2_x86_604352.msi并且要将C:\Program File

  性能测试方面:

  1. 可以使用loadrunner/" target="_blank" >LoadRunner11.0,LR11.0支持Sliverlight的性能测试压力测试,负载测试等。

  UI测试方面:

  1. 开发人员可以使用VS2010自带的Test来测试SliverLight。但是要安装

  “en_visual_studio_2010_fp2_x86_604352.msi”并且要将“C:\Program Files\Common Files\microsoft shared\VSTT\10.0\UITestExtensionPackages\SilverlightUIAutomationHelper”下的“Microsoft.VisualStudio.TestTools.UITest.Extension.SilverlightUIAutomationHelper.dll”引入到Sliverlight工程中。具体操作为:

  1. 将Sliverlight工程卸载。

  2. 编辑.csproj文件。

  3. 将False

  将

<Choose>

<When Condition=" '$(Production)'=='False' ">

<ItemGroup>

<Reference Include="Microsoft.VisualStudio.TestTools.UITest.Extension.SilverlightUIAutomationHelper">

</Reference>

</ItemGroup>

</When>

</Choose>

  放入到.csproj文件中,放入的位置如下图:

  4. 将工程加载,rebuild。

  参考:http://msdn.microsoft.com/zh-cn/library/gg413374

  这样就可以录制SliverLight Web项目了。

  使用VS2010自带的测试工具来测试的弊端是:必须要在测试之前将

  Microsoft.VisualStudio.TestTools.UITest.Extension.SilverlightUIAutomationHelper引用。这就需要在开发的工程中完成。

  VS2010UI测试之旅

  开始我们的第一个UITest文件

  下面就真正地开始VS2010的UI测试之旅。

  1. 建立一个Test Project。

  2. 新建完测试工程后,要建立一个Test,我们要做的是UI测试,所以这里选择的是“Coded UI Test”

  3. 新建完Test之后,会有一个提示框弹出,询问你是想怎么创建UI测试,这是会选择“录制操作、编辑UI映射或添加断言”

  4. 这时屏幕右下角会出现UI测试生成器。

  5. 本例中以PSD系统为例来对SliverLight的UI进行测试。

  6. 点击“开始录制”按钮。

  7. 打开要录制操作的SliverLight页面,进行相应的操作。这时可以在UI测试生成器处看到一些相应操作的名称以及操作对象的名称。做完一系列操作后,点击“停止录制”按钮,这时点击代码生成按钮。就会出现下面的对话框,将刚刚的操作生成一个方法,方法名称可以自定义。

  8. 当代码生成完毕后,面板上的准星可以使用。点击准星不放,拖动到想要录制的对象上,放开鼠标。

  刚刚被选中的对象并且添加到对象库的对象。注:要点击左上角的,这样才能将选中的对象添加到对象库中,生成代码时被初始化。

  9. 添加断言。

  同步骤8一样,但是在右侧面板中选择Exits属性,值为TRUE。

  然后点击“添加断言”按钮。

  这里我们要选择AreEqual,值为True。表示,我们确定UIBingosoftPSDSliverliButton1这个按钮存在,如果在运行测试的时候,该Button存在,则pass,否则fail。

  10. 点击代码生成按钮,为刚才添加的断言生成判断方法,方法名称可以自定义。

  11. 点击VS2010中的运行按钮。

  VS2010会自动演示刚才的操作,并且显示运行结果。

  VS2010生成的代码到底放在了那里?

  下面我们来看一下VS2010生成的代码放在了哪里。

  1. 我们来看一下工程的目录结构,不难发现,录制时自动生成了.uitest文件,并且所有的方法代码都在.Designer.cs文件中。

  虽然UIMap.cs和UIMap.Designer.cs是同时生成的,但是VS自动生成的代码放在.Designer.cs文件中。而在.cs文件中,可以放置一些自己编写的代码。

  2. 但是最主要的还是.uitest文件,虽然.Designer.cs文件中放置的是生成的代码,但是会随着.uitest文件中的内容变化而变化。所以在Coded UI Test中,主导代码生成的还是.uitest文件。下面我们来看一下.uitest文件的结构。

  .uitest文件的结构主要包括

<InitializeActions/>

<ExecuteActions/>

<CleanupActions/>

<OnErrorActions/>

<Maps/>

<ValueMap/>

       其中InitializeActions,ExecuteActions,CleanupActions,OnErrorActions都是对于操作动作的描述:

  InitializeActions:指初始化需要执行的操作动作

  ExecuteActions:只测试过程中的操作动作(通过录制所生成的操作都默认放在ExecuteActions中)

  CleanupActions:指测试完毕需要清理资源的操作动作

  OnErrorActions:只带异常处理的操作动作

  他们都对UIMap.Designer.cs操作动作部分代码的生成和参数的生成有直接的影响。

  严格地说,放在InitializeActions中的操作动作和放在ExecuteActions,CleanupActions,OnErrorAction的动作没有任何本质上的区别,仅仅只是从一个代码可读性上的考虑。

   

原文转自:http://www.ltesting.net