我非常新的测试或测试自动化类型。现在,我最近分配给一个项目来自动化WPF应用程序的UI测试。在稍微搜索MSDN和其他人之后,我对我是否应该使用Microsoft UI Automation库或VS 2010的新编码UI测试功能有点混淆。我没有得到其中一个适用的图片在哪个场景中,一个优势在另一个方面以及哪一个适合我(再次我有一个像WPF应用程序一样,错过了许多自动化的应用程序,我必须自动化其UI测试)。请帮助!!!

有帮助吗?

解决方案

基本上Microsoft UIA是.NET 4.0中的新型可协议库。 WPF应用程序和控件通过AutomationPeer类对UIA内置支持。

Coded-UI测试是一个记录和播放自动化工具,它使用下面的Microsoft UIA库。由于与C#中的编写代码相比,它可以提高QA生产力,以便记录更多测试用例。

对于计划中有自动化支持的应用程序,Coded-UI应该足够。如果缺少AutomationID,请确保控件具有一些唯一属性,如名称。使用敏感或检查检查。

如果没有唯一属性是常规的,则还有以下内容可以与编码UI结合使用。

  • 从事件中 当您的应用程序接收到UI Automation事件时,传递给事件处理程序的源对象是自动化单元。例如,如果您已订阅焦点更改的事件,则传递给AutomationFocusChangedEventHandler的源是收到焦点的元素。有关更多信息,请参阅订阅UI自动化事件。

  • 从一个点: 如果您有屏幕坐标(例如,光标位置),则可以使用静态从点从光点方法检索自动化单元。

  • 从窗口句柄: 要从HWND检索自动化单元,请使用静态从Handle方法。

  • 从聚焦控制: 您可以检索代表静态聚焦性的聚焦控制的自动化单元。

其他提示

如果您可以利用和使用编码ui test 然后走那条路线。确保验证您给定的配置得到支持

UI Automation Library在后面的代码中解析了所有内容。然后,这迫使您使用UISPY等工具来访问控件内部,以便您可以构建您的测试。

另一方面的编码UI测试仍然有代码,但它允许通过给定的应用程序记录您正在测试的给定应用程序,这将大大增加您可以创建的测试数量。

UI自动化库是一个低级库。通常,您不想直接编写对其的测试,因为它需要一个非常不错的工作量。

我建议看看更多的高级库。你提到了其中一个 - 编码UI;另一个不错的选择将是白色的睾丸。他们都适合不同类型的项目。当您不想投资到您的测试套件时,编码UI很好。与此同时,如果你要写很多测试,那就不会缩放太多,你最好选择白色。

这里我更详细地比较了两个框架:编码ui vs白色

要补充上述响应,请查看 cuite ,有助于一点,并且可能是一种适当的方法给你。

我使用Codeduitest库开始“滚动我自己的”半框架“,并设计了从(C#)代码中分离自动化详细信息的范例。 基本上,我正在创建一个读取需要从电子表格中完成的驱动程序,其中每行中的每一行都是测试步骤(或指向不同工作表中的方案的指针)。 目前,不完整,但很有希望,我将其符合WPF应用程序,以部分成功。 主要问题之一是开发人员忽略了唯一且一致地识别控制。

bey

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top