测试自动化 - Win32应用程序 - 白色/ UI自动化 - 识别对象的问题

时间:2011-06-02 13:56:59

标签: testing automation ui-automation white

我正在为使用Borland C ++编写的Win32应用程序的QTP编写的现有测试寻找替代方案。 我的候选人是White,它基于UI自动化,因为它是原生解决方案, 我可以使用.NET / C#创建我的测试,并轻松地将它与nUnit和Hudson集成。

http://white.codeplex.com

MS UI自动化 http://msdn.microsoft.com/en-us/library/ms747327.aspx

UI验证 http://uiautomationverify.codeplex.com

我使用UI Verify作为间谍来识别我想在测试中找到的对象的属性。 或多或少当我在间谍中看到某些东西时,我可以使用UI Automation / White找到它。 通常,识别对象没有太多问题 但是当我尝试搜索选项卡面板中包含的选项卡内的某些内容时 或者尝试查看菜单栏的MenuItems然后出现问题。

UI自动化/ UI验证工作有线。当我运行UI验证(1.0版本)时,我发现只有这样才能正确注册对象 当我设置“焦点跟踪”选项并单击目标对象或更改其上的键盘光标时。否则就找不到它们了。 UI Verifier可以显示我的“标签”面板的孩子。但我无法使用UI Automation / White找到它们。这是示例代码:

Tab tab = window.Get(); ITabPage tabPage = tab.SelectedTab; AutomationElementCollection newCol = tabPage.AutomationElement.FindAll(TreeScope.Descendants,Condition.TrueCondition); window.Get( “BUTTONNAME”);

即使间谍看到孩子们,这个集合也是空的。

  1. 你们有没有一些他/她想与我分享的白/ UI自动化库的经验?
  2. 我想从间谍到我的测试实现跟踪功能。你能帮帮我吗?我正在尝试研究UIA验证间谍的代码。我认为有两个类负责捕获对象:FocusChangeListener和FocusTracer - 这是代码:
  3. http://uiautomationverify.codeplex.com/SourceControl/changeset/view/9992#214260 http://uiautomationverify.codeplex.com/SourceControl/changeset/view/9992#214192

    要求: 1. Windows SDK 2. .NET 3.5 3.白色 4. UIA验证码

    1. 您有更好的白/ UI自动化替代方案吗?
    2. R上。

1 个答案:

答案 0 :(得分:1)

你可以,R或YoYo,把你的表格编译或源代码(最好没有内部逻辑)放在文件共享的某个地方吗? 如果UIAVerify看到它,我从来没有见过使用UI自动化捕获的控件。我看到了这样的窗户,只能通过UIAVerify的焦点跟踪功能捕捉到。这种情况下,UI自动化搜索无法触及这样的窗口。

关于控件,您确定您遇到的控件是否具有Name属性?也许,这是一个只能通过ValuePattern获得的值,而不是Name?