gpt4 book ai didi

wpf - Microsoft UI 自动化库与编码 UI 测试

转载 作者:行者123 更新时间:2023-12-02 18:05:26 28 4
gpt4 key购买 nike

我对测试自动化之类的东西非常陌生。最近,我被分配到一个项目,我必须编写一个应用程序(或者,可能是一个脚本,我不确定),该应用程序将自动执行类似 CAD 的 WPF 应用程序的 UI 测试,该应用程序缺少很多 AutomationId

在 MSDN 和其他来源进行了一些搜索后,我对是否应该使用 Microsoft UI Automation Library 还是新的 Coded UI Test 功能有点困惑包含在VS2010中。我不清楚这两者中的哪一个适用于哪些场景,其中一个相对于另一个有什么优势以及哪一个适合我的目的。

如果您对此事有经验/了解,请遮遮掩掩。提前致谢。

最佳答案

基本上,Microsoft UIA 是 .Net 4.0 中的新辅助库。 WPF 应用程序和控件通过 AutomationPeer 类内置对 UIA 的支持。

Coded-UI 测试是一个录制和播放自动化工具,它使用底层的 Microsoft UIA 库。与用 C# 编写代码相比,它是一种工具,因此它可以提高 QA 生产力以记录更多测试用例。

对于计划支持自动化的应用程序,Coded-Ui 应该足够了。如果缺少 AutomationID,请确保控件具有一些唯一的属性,例如名称。使用 UIVerify 或 Inspect 来检查这一点。

如果没有可用的唯一属性,您可以将下面提到的其他技术与 Coded-UI 结合使用。

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

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

  • 从窗口句柄:要从 HWND 检索 AutomationElement,请使用静态 FromHandle 方法。

  • 来自聚焦控件:您可以从静态 FocusedElement 属性中检索代表焦点控件的 AutomationElement。

关于wpf - Microsoft UI 自动化库与编码 UI 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4909206/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com