WPF的UI自动化测试情况如何?
WPF强化了用户界面的自动化测试,使测试人员可以从繁琐的UI测试中解脱出来,将更多的精力用于更加底层的测试工作。
从Visual Studio2005开始,微软将测试集成到其开发工具中,从工具上保证了测试工作在软件生命周期中的重要地位。 而从NET3。0的WPF开始,微软通过其UI的自动化支持,协助开发人员为界面元素建立自动化测试标识。
WPF的UI自动化技术
WPF为Windows桌面应用程序和WEB应用程序提供了一个智能客户端开发模型,以方便构建丰富统一的UI、媒体、图形图像、动画和文档等。 一方面WPF可以促使开发人员更积极地参与到用户界面的开发,另一方面提升用户体验的满意度。
...全部
WPF强化了用户界面的自动化测试,使测试人员可以从繁琐的UI测试中解脱出来,将更多的精力用于更加底层的测试工作。
从Visual Studio2005开始,微软将测试集成到其开发工具中,从工具上保证了测试工作在软件生命周期中的重要地位。
而从NET3。0的WPF开始,微软通过其UI的自动化支持,协助开发人员为界面元素建立自动化测试标识。
WPF的UI自动化技术
WPF为Windows桌面应用程序和WEB应用程序提供了一个智能客户端开发模型,以方便构建丰富统一的UI、媒体、图形图像、动画和文档等。
一方面WPF可以促使开发人员更积极地参与到用户界面的开发,另一方面提升用户体验的满意度。
在传统的软件开发中,用户界面开发费工费时,并且跨越了表现层和技术层,使一般的程序员都苦恼不已。WPF则从技术层面上减轻了这种复杂性,提升了开发人员参与用户界面设计开发的积极性。
UI自动化对大多数用户界面元素提供可编程访问,即通过除标准输入输出 (比如键盘鼠标) 方式以外的方法操作UI。UI自动化核心层屏蔽不同框架技术下多种UI元素的差异,确保UI自动化客户应用程序能在多种框架技术下工作。
比如,WPF按钮的内容(Content)属性,标准Win32按钮的标题(Caption)属性以及HTML页面上显示图像的替换文字(ALT)属性等都映射为WPF中 UI自动化视图中单一的名字(Name)属性。
藉此,一些辅助技术产品和自动化测试框架可获得其所需要的获取用户界面信息统一的程序化访问方法,此外,通过自动化的用户界面技术,应用开发商也可以提高其产品的易用性。
UI自动化模型
现有技术下实现UI自动化测试系统开发需要通过不同方法获得和展现UI元素信息,开发人员需要花费大量的时间和精力去搜集这些必需的UI元素信息,而不能集中精力于系统特征和功能的实现上。
借助于WPF的UI自动化所提供的统一的控制模式,通过其等价的名字属性 (NameProperty) 就可以轻松实现对不同UI元素的统一控制。UI自动化技术减少了此类应用系统的开发成本,将成为下一代辅助访问技术产品和自动化测试系统主要的界面信息资源提供者。
UI自动化包括两部分。UI自动化服务提供者 (UI Automation Providers) 和UI自动化客户程序 (UI Automation Clients) 。UI自动化服务提供者是提供UI自动化服务的应用程序,比如Word, Excel及其它基于Windows的应用程序等,为用户通过辅助程序技术对其访问提供支持。
UI自动化客户端程序是实现用户界面自动化访问的辅助技术程序,比如Word和Excel中供应用程序访问的对象模型及其宏脚本等。相应的,对开发人员来说,可以通过调用UI自动化提供者应用程序接口(UI Automation Providers API)创建用。
收起