前几天看到开源自动化测试工具White。调试了几个例子,就被它强大之处所深深吸引,这么好的工具,但网上介绍的内容却很少,于是偶翻译了原作者的介绍文档,并在此基础上增加了目前的浅显认识,希望通过本文的介绍能够使更多的人认识它、研究它,最后有朋友再把研究所得介绍出来,那就太好了!
简介:
Microsoft在.net3.0中介绍了一些非常有趣的技术,包括WPF,虽然WCF以及WF技术有点多余,但是.net3.0中也介绍了一个非常有用的技术,这个技术就是UI Autiomation(UIA)接口,一个顺从很多人期望的技术。UIA是.net中的一个库,通过这个库你可以极其方便地识别控件的UI元素,并获得这些UI元素的属性值,通过操作这些UI元素以及属性的值就可以实现Windows应用程序的人工自动化测试。虽然Microsoft用了很大的力气才压缩并生成这些Windows UI的接口。但这些UIA是基于Windows消息API接口的,调用它们需要用低级的C函数来实现。就像大家所想的那样,功能自动化测试如果可以使用方便的方法,就像调用.net类库一样的话,是多么舒心的事啊。正如你所希望的那样,White就是实现这种想法的最好方式。
White支持Wind32、WinForm、WPF以及SWT应用程序的功能自动化测试。White当然也能够处理UIA没有提供的一些Windows消息。但是使用这些方法取决于用户如何使用White提供的API。White不支持Web应用程序。
White开发环境是使用c#.net。
White的工作层次:
批注:在你的工程文件中引用White.Core下的类,通过这些类的方法和属性的使用,就可以实现功能自动化测试。而White.Core封装的又是Windows Messages和UIA所提供的接口。这些接口是在Windows Messages和Windows操作系统的基础上才能够运行的。
White封装的对象
……………………
查看全文请点击下载:http://www.51testing.com/html/54/n-247254.html
White如何快速地找到控件:
SearchCriteria类中有多个方法来寻找UItems,在寻找UIItems的寻找过程中会枚举窗口中所有UItems,根据你所指定的方法SearchCriteria将会快速地、精确地找到这个控件。如何准确地、快速地寻找控件取决于你使用SearchCriteria方法中的内容。当你运行你的测试程序的时,White就可以这些记录的属性快速的寻找到的UIItems在窗口中的位置。如果下次你应用程序更改了你使用SearchCriteria方法获得的属性值的内容,应用程序就将找不到该控件,当然测试程序也就不能够继续运行了。所以当应该程序的属性或者位置改变时一定要小心,要在测试程序中及时更新其相关内容。