51Testing软件测试论坛

标题: UI Automation的应用 [打印本页]

作者: iov_cp    时间: 2009-4-8 17:51
标题: UI Automation的应用
越来越多WPF被应用,而Win7也大量使用WPF.
可是很多tool都不能支持WPF,当然我指的免费的tools.而QTP越来越大,不适合灵活测试,而且还要给钱.
有没有人关注和投入UI Automation???相关内容请参考www.msdn.com
如果有人关注了,请谈谈感受,这里大部分人的code 能力有限.
希望更多人能自己program...
UI Automation: Microsfot为了automation的广泛应用,当然也是帮自己开发的忙,而推出的方法.被inetegrate with .Net 3.0及以上
作者: shanxi    时间: 2009-4-8 18:17
UIA实际上是msaa的托管代码实现,本来msaa就是需要程序自身来支持的,但太多的程序缺乏这种支持,比如腾讯qq

.net范畴

[ 本帖最后由 shanxi 于 2009-4-8 18:24 编辑 ]
作者: iov_cp    时间: 2009-4-9 08:50
原帖由 shanxi 于 2009-4-8 18:17 发表
UIA实际上是msaa的托管代码实现,本来msaa就是需要程序自身来支持的,但太多的程序缺乏这种支持,比如腾讯qq

.net范畴

能再详细clarify么. 比如:1.是否我要想automate 某个application ,那么application是否在wpf设计时就要由developer留下interface? 2.你举例QQ,为什么说它不属于支持的范畴.(我个人是认为只有用WPF开发的才支持)
主要是自己还在看relevant aritcles,没弄清
作者: shanxi    时间: 2009-4-9 13:17
如果是windows一般会有基本的接口
但如果是windowsless,则需要应用程序自身实现accessibility server:
诸如QueryInterface,AddRef,Release,GetIDsOfNames等等,注意底层接口是IAccessible

更正下先前说的,uia是作为msaa的续任者出现的,灵活性等方面都增强了不少,比msaa架构更合理,提供了msaa-uia桥来兼容以前的解决方案,都在msdn上可见。

[ 本帖最后由 shanxi 于 2009-4-9 13:23 编辑 ]
作者: iov_cp    时间: 2009-4-10 09:50
标题: God
原帖由 shanxi 于 2009-4-9 13:17 发表
如果是windows一般会有基本的接口
但如果是windowsless,则需要应用程序自身实现accessibility server:
诸如QueryInterface,AddRef,Release,GetIDsOfNames等等,注意底层接口是IAccessible

更正下先前说的,ui ...

看来你是做code出来的,对这些都很清楚.
象Windowsless,msaa,Accessibility server,QueryInterface,Addref,GetIDsofNames,IAccessible我都完全不明白和用过,只知道是方法和接口. 哎,可惜不懂哦..
作者: shanxi    时间: 2009-4-10 11:07
标题: 回复 5# 的帖子
其实就是COM接口,微软的Accessibility都是采用进程外COM方式实现

基本上自定义控件需要程序自己来实现代码量不算少,你可以看看Firefox对Accessibility支持利弊的讨论权衡一下是否支持。

目前国内的window程序基本上都不会支持Accessibility,所以一般看国际化大公司的window程序
作者: shanxi    时间: 2009-9-10 22:13
标题: 有兴趣的看这个
White: Automate windows applications
http://white.codeplex.com/

纯UIA开源框架
作者: lantianwei    时间: 2009-9-10 23:27
感觉UIA功能不是很强大 对于第三方控件更是无能无力
作者: shanxi    时间: 2009-9-11 10:18
原帖由 lantianwei 于 2009-9-10 23:27 发表
感觉UIA功能不是很强大 对于第三方控件更是无能无力


你说的这个第三方控件不支持UIA ,如果支持UIA你需要做的是封装这个控件所有的基本UIA元素形成合集以识别。

你购买这个控件时可以提需求,如果什么接口这个控件都不提供,还买它干甚。自己做一个支持UIA的控件的时间都有了。

[ 本帖最后由 shanxi 于 2009-9-11 10:45 编辑 ]
作者: lantianwei    时间: 2009-9-11 11:28
一般第三方控件提供的接口都是给开发使用的 不会考虑到AUTOMATION 提需求这东西 就要看公司对自动化有多重视了

好像自己开发个控件不怎么容易吧 我听我们的开发说 自己开发个GRID控件 起码得几个月的时间

原本我是想用UIA来操作DEVEXPRESS这公司的控件  但发现根本处理不了 后来还是让开发给我做SUPPORT来的方便
作者: shanxi    时间: 2009-9-11 12:26
原帖由 lantianwei 于 2009-9-11 11:28 发表


好像自己开发个控件不怎么容易吧
原本 ...


是的。
特别是让这个控件支持UIA的Server,代码量不少。

不过国内有些公司比如腾讯QQ不支持,我倒感觉它是故意的。
作者: lantianwei    时间: 2009-9-11 15:12
标题: 回复 11# 的帖子
应该有他们自己的考虑吧
安全性 版权 核心技术什么的
作者: 聚散两依依    时间: 2009-11-18 00:24
谢谢,真是好方法!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2