UFT

 UFT是一种自动测试工具。使用UFT的目的是想用它来执行重复的自动化测试,主要是用于回归测试和测试同一软件的新版本。因此你在测试前要考虑好如何对应用程序进行测试,例如要测试哪些功能、操作步骤、输入数据和期望的输出数据等

    基本功能

UFT提供符合所有主要应用软件环境的功能测试回归测试的自动化。采用关键字驱动的理念以简化测试用例的创建和维护。它让用户可以直接录制屏幕上的操作流程,自动生成功能测试或者回归测试用例。专业的测试者也可以通过提供的内置脚本和调试环境来取得对测试和对象属性的完全控制。

软件特点

       1)UFT是一个侧重于功能的回归自动化测试工具。提供了很多插件。

2)UFT支持的
脚本语言是VBScript,这对于测试人员来说,感觉要“舒服”得多(如相比
SilkTest采用C语言)。VBScript毕竟是一种松散的、非严格的、普及面很广的语言。 3)UFT支持录制和回放的功能。录制产生的脚本,可以拿来作为自己编写脚本的template。录制时,还支持一种lower level 功能,这个对于UFT不容易识别出来的对象有用,不过它是使用坐标来标识的,对于坐标位置频繁变动的对象,采用这种方式不可行。另外,UFT的
编辑器支持两种视图:Keyword模式和Expert模式。Keyword模式想法是好的,提供一个 描述近似于原始
测试用例的、跟代码无关的视图(我基本很少用,除了查看、管理当前
test中各个action的完整流程),而Expert就是
代码视图,一般编写脚本都在这个区域。 4)一个有用的工具:Object Spy,可以用来查看Run-time object和Test object属性和方法。 5)UFT通过三类属性来识别对象:a)Mandatory; b)Assistive; c)Ordinal identifiers。大部分情况下,通过对象的一些特定属性值就可以识别对象(类型a)。这些属性可以通过Tools->Object Identification 定义。 6)Object Repository(OR)是UFT存储对象的地方。
测试脚本运行后,UFT根据测试脚本代码,从这个对象库中查找相应对象。每个Action可以对应有一个或者多个OR,也可以设置某个OR为 sharable的,这样可以供其他Action使用。注意,使用QTP录制功能时,默认将被测对象放在local OR中,可以通过 Resources->Object Respository,选择Local查看。 7)说到UFT的要点,不得不说Action。Action是UFT组织
测试用例的具体形式,拥有自己的DataTable和Object Repository,支持Input和output参数。Action可以设置为share类型的,这样可以被其他test中的Action调用(注意:UFT是不支持在一个test中调用另外一个test的,只有通过sharable action来调用)。 8)如3)所述,一个test中,多个action的流程组织,只有通过Keyword视图查看和删除,在Expert视图中没有办法看到。 9)调用Action可以通过菜单Insert->Call to *** 来实现。UFT提供三种类型的调用方式:a)call to new Action,在当前test中创建一个新的Action;b)call to Copy of Action;c)call to existing action,调用一个re-usable action,如果这个re-usable action来自另外一个test,将以只读的方式插入到当前test中。 10)UFT提供excel 形式的数据表格DataTable,可以用来存放测试数据或参数。DataTable有两种类型:global 和local。UFT为DataTable提供了许多方法供存取数据,在对测试代码进行参数化的时候,这些方法非常有用。 11)
环境变量(Environment Variables)。在一个test中,环境变量可以被当前test中所有action共享。环境变量也有两种类型:build in 和user defined。用户自定义的环境变量可以指向一个XML文件,这样可以实现在众多test之间共享变量。 12)UFT可以引用外部的VBS代码库,通过Settings-》Resource加入,也可以ExecuteFile命令在代码中直接执行。这种VBS库可以为所有action和test共享。 13)UFT默认为每个test提供一个测试结果,包括Passed,Failed,Done,Warning和information几种状态类型,可以进行对结果Filter。但是,只能为每个test产生一个testing result,不能为多个testing产生一个总的testing result. 主要步骤 UFT进行
功能测试
的测试流程 [制定测试计划]——>[创建测试脚本]——>[增强测试脚本功能]——>[运行测试]——>[分析测试结果] 大致五个步骤:

制定计划

自动测试的测试计划是根据被测项目的具体需求,以及所使用的测试工具而制定的,完全用于指导测试全工程。 UFT是一个
功能测试工具,主要帮助测试人员完成软件的功能测试,与其他测试工具一样,UFT不能完全取代测试人员的手工操作,但是在某个功能点上,使用UFT的确能够帮助测试人员做很多工作。在
测试计划阶段,首先要做的就是分析被测应用的特点,决定应该对哪些功能点进行测试,可以考虑细化到具体页面或者具体控件。对于一个普通的应用程序来说,UFT应用在某些界面变化不大的
回归测试中是非常有效的。

创建脚本

当测试人员浏览站点或在应用程序上操作的时候,UFT的自动录制机制能够将测试人员的每一个操作步骤及被操作的对象记录下来,自动生成测试脚本语句。与其他自动测试工具录制脚本有所不同的是,UFT除了以VBScript
脚本语言的方式生成脚本语句以外,还将被操作的对象及相应的动作按照层次和顺序保存在一个基于表格的
关键字视图中。比如,当测试人员单击一个链接,然后选择一个CheckBox或者提交一个表单,这样的操作流程都会被记录在关键字视图中。

增强脚本

录制脚本只是为了实现创建或者设计脚本的第一步,基本的脚本录制完毕后,测试人员可以根据需要增加一些扩展功能,UFT允许测试人员通过在脚本中增加或更改测试步骤来修正或自定义测试流程,如增加多种类型的检查点功能,既可以让UFT检查一下在程序的某个特定位置或对话框中是否出现了需要的文字,还可以检查一个链接是否返回了正确的URL地址等,还可以通过参数化功能,使用多组不同的数据驱动整个
测试过程。

运行测试

UFT从脚本的第一行开始执行语句,运行过程中会对设置的检查点进行验证,用实际数据代替参数值,并给出相应的输出结构信息。
测试过程中测试人员还可以调试自己的脚本,直到脚本完全符合要求。

分析测试

运行结束后系统会自动生成一份详细完整的测试结果报告。