使用编码的 UI 测试来测试 Windows 应用商店应用

     自从Win8应运而生以来,Windows应用商店便立马成为开发者展示的舞台,而这短短的几年里应用的数量就可数以万计,这也不可避免地出现了良莠不齐的局面。我们都知道Visual Studio是目前最流行的Windows平台应用程序的集成开发环境。VS是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境(IDE)等等。所写的目标代码适用于微软支持的所有平台,我们也可以使用它来开发Win8应用。另一方面,Visual Studio也可以用来进行软件测试,其自带的模板则更为方便,在Visual Studio Ultimate 2013里新出的Win应用程序UI测试则会帮助我们更加直观地对Win8应用进行测试,这样我们就可以很容易检测出Win8应用的bug。

     先来介绍下UI测试的基本知识,通过应用程序的用户界面 (UI) 来操作该应用程序的自动测试称为编码的 UI 测试 (CUIT)。 这些测试包括对 UI 控件的功能测试。 它们使你可以验证整个应用程序(包括其用户界面)是否正常运行。 编码的 UI 测试对于在用户界面中存在验证或其他逻辑(例如在网页中)的情况特别有用。 它们也经常用于自动化现有的手动测试。如下图所示,一种典型的开发体验可能是这样一种情况:最初,你只需建立自己的应用程序(F5),并通过单击 UI 控件来验证一切是否运行正常。 你可能会决定创建一个编码的测试,这样就不需要继续手动测试应用程序。 根据在应用程序中进行测试的特定功能,你可以针对任何一个功能测试或者针对可能会或可能不会包括 UI 级别测试的集成测试编写代码。 如果你只想直接访问某些业务逻辑,则可以编写单元测试代码。 然而,在特定情况下,在应用程序中包括各种 UI 控件的测试将是有益的。 编码的 UI 测试可以自动化初始 (F5) 方案,以便验证代码改动不会影响你的应用程序的功能。

 

在应用程序开发过程中进行测试

 

接下来我就详细的介绍如何使用编码的 UI 测试来测试 Windows 应用商店应用:

 (1)为 Windows 应用商店应用创建新编码的 UI 测试项目(文件→新建→项目→应用商店应用→Windows应用程序→编码的UI测试(Windows)

 

(2)选择使用十字线工具编辑UI映射

 

(3)在编码的 UI 测试生成器中使用十字线工具以选择应用磁贴、右键单击“AutomationId”,然后选择“将值复制到剪贴板”。稍后将剪贴板中的值用于编   写操作以启动可供测试的应用。

        

(4)在运行的 Windows 应用商店应用中,使用十字线工具以选择按钮控件和文本框控件。 在添加每个控件后,请在编码的 UI 测试生成器工具栏中选择“将控件添加到 UI 控件图”按钮

 

(5)在编码的UI测试生成器工具栏中选择“生成代码”按钮,然后选择“生成”

来为对 UI 控件图所做的更改创建代码。

 

(6)使用十字线工具选择文本框控件,然后选择“DisplayTest”属性

 

(7)添加断言,将在测试中使用它以验证该值是否正确。为断言添加并生成代码。

 

(8)在“解决方案资源管理器”中,打开 UIMap.Designer.cs 文件,以查看为断言方法和控件添加的代码。

 

(9)在“解决方案资源管理器”中,打开 CodedUITest1.cs。针对使用已添加UIMap 的控件运行测试所需的操作,将代码添加到CodeUTTestMethod1方法:

 

(10)运行测试即可

实验分析:

针对Win8的一个计算器应用我们进行如下的测试

  1. 测试用例和结果:

                                             表1--测试用例

测试编号

输入

预期输出

实际输出

是否通过测试

    1

  2×3=

    6

   6

    是

    2

   2√

1.414213562373

1.414213562373

    是

    3

   4√

    2

     4

    否

    4

   3 1/x

0.333333333333

0.333333333333

    是

    5

   5 1/x

    0.2

     5

    否

    6

   8÷0=

(显示异常信息)

  正无穷大

    是

    7

   0 1/x

 (显示异常信息)

     0

    否

    8

   -3÷6=

    - 0.5

    -0.5

    是

    9

36÷5×=

(显示异常信息)

    51.84

    否

    10

   3-5×6=

     -27

     -12

    否

(1)

                   

(2)

                     

(3)

       

(4)

            

(5)

       

(6)

               

(7)

       

(8)

       

(9)

                

(10)

             

2.测试问题报告

                                                    表2--问题总结

  问题编号

用例编号

问题描述

问题级别

     1

    3

开平方出错(完全平方数不能开)

    3

     2

    5

倒数出错(2、4、5、8不能倒)

    3

     3

    7

除零出错

    1

     4

   9

用户非法输入

    4

     5

   10

算符优先级出错

    2

 

(5)结果截图:(分别为测试通过和未通过的截图,其他类似,不再一一罗列)

 

    



posted on 2015-04-14 21:58  华语  阅读(425)  评论(0编辑  收藏  举报

导航