UI automation - .net

来源:互联网 发布:手机免费刷赞软件 编辑:程序博客网 时间:2024/05/29 17:53

 晚上睡不着,就随便写写东西吧.

     UI Automation是一个新的用于自动化测试的技术,随着.NETFX3.5的发布而发布,亦不过才一年多的时间。所以,还有很多不完善的地方,其中包括一些已知的bug。不过,相信在.NETFX4.0已经对其进行了改进,增加了一些新的property以及partten等等。

   

    按照微软官方的说法,UI Automation是一个跨平台的技术,也就是不仅windows可以使用,linux等也同样可以使用。但是,事实是否如此?恕本人孤陋寡闻。

  

    UI Automation是在MSAA基础上建立的,MSAA就是Microsoft Active Accessibility。UIA在某些方面超过了msaa,而且对于wpf的控件都默认支持UI Automation.

    UI Automation将所有的窗体、控件看做是AutomationElement。顺便说一下,对于UI(用户界面)来说,所有显示在桌面上的UI,其实际是一个UI Tree,根节点是desktop。我们可以使用UI Spy或者是SPY++来获得UI和Control的信息。所以,在UI Automation里,根节点表示为AutomationElemnet.RootElement.获得了根节点,就可以找到相应的element了,如button,checkbox, treeview, 并且可以invoke事件,比如单击,模拟键盘输入等等。