【问题标题】:Coded UI, search properties for text controls编码的 UI,文本控件的搜索属性
【发布时间】:2017-07-12 15:42:41
【问题描述】:

我在录制文本控件时遇到问题。我测试的应用程序:桌面、WinForms、.NET 4.6

当我使用“编码的 UI 测试生成器”时,对于新的文本控件,它会自动创建以下搜索属性:
控件类型:文本
技术名称:MSAA
姓名:约翰

“名称”属性值与“显示文本”属性值相同。如果文本被更改(例如 John -> Jane),将找不到此控件。我需要独立的搜索属性。我想使用“ControlName”而不是“Name”属性。

我的搜索属性:
控件类型:文本
技术名称:MSAA
控制名称:lFirstName

当然,我可以在 UIMAP.uitest 中记录完成后手动更改搜索属性

此解决方案的缺点:
1. 编码慢 2.需要高级测试员 3. 如果您稍后再次使用“Coded UI Test Builder”,则它无法识别 UIMAP 中此类修改过的控件,并为这些控件创建“克隆”。

a) 是否可以为录制配置 Coded UI 测试规则以强制其使用 ControlName 而不是 Name?
b) 还有其他想法吗?

【问题讨论】:

  • “名称”属性应该已经是您的控件的标识符,并且不应依赖/更改用户输入。您是如何为您的控件设置名称“John”以及如何将其更改为“Jane”的?
  • 这不是 ControlType 编辑。编辑具有固定名称。但这是 ControlType 文本。而 John、Jane 等都是数据库中的值。

标签: c# automated-tests coded-ui-tests microsoft-ui-automation


【解决方案1】:

据我所知,如果控件的“名称”属性有值,那么 Coded UI 会将“名称”记录为搜索属性,因此除了更改 之外,可能无法使用“控件名称” UIMAP.uitest 文件手动用于基于 Windows 的应用程序。对于 Web 应用程序,您可以通过更改 IEPropertyConfiguration.xml 文件来配置搜索属性,该文件位于“C:\Program Files (x86)\Common Files\microsoft shared\VSTT\14.0”为 64位机器和 32 位机器的“C:\Program Files\Common Files\microsoft shared\VSTT\14.0”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多