让漆黑之眼注视着那微弱的光芒,挣扎却依旧顽强!

QTP基础知识解析

上一篇 / 下一篇  2011-05-17 15:10:45 / 个人分类:QTP知识浅谈

1、创建测试或组建

首先可以通过在应用程序或网站上录制会话,或者建立对象库并使用关键字驱动功能向关键字视图中手动添加步骤来创建测试或组件。在QTP里面我们可以通过两种方式添加步骤来创建测试或组件:

在应用程序或网站上录制会话。

建立对象库并使用这些对象在关键字视图或专家视图中手动添加步骤 ,然后在在测试或组件中插入检查点,检查页面、对象或文本字符串中的特定值或特征,通过它可以标识网站或应用程序是否正常运行。或是通过用参数替换固定值扩展测试或组件的范围。提供数据表中的数据,定义环境变量和值,定义测试、组件或操作参数和值,或者使用QTP生成随机数字或当前用户和测试数据等。

最后如果需要的话使用QTP中众多的功能测试功能来增强测试或组件或添加编写语句来实现更复杂的测试目标。

2、运行测试和组建
控制运行会话,帮助标识和消除测试或组件中的缺陷。使用单步执行单步跳过单步退出命令逐步运行测试或组件,或设置断点使测试或组件在预定点暂停。每当测试或组件在断点处停止时,可以在调试查看器中查看其变量的值。
3、分析结果
在运行测试或组件之后,通过两种方式可以查看其结果:在结果窗口中查看结果;自动报告在运行会话过程中检测到的缺陷,可能的话并上报到其他缺陷管理产品中。
1KeywordView(关键字视图)
通过关键字视图,QTP提供了一种模块化的表格格式创建和查看测试或组件的步骤。每个步骤在关键字视图中都是一行,这样用户可以轻松的修改任何一部分组成。
在录制会话过程中,用户在应用程序上执行的每个步骤在关键字视图中记录为一行。(登录实例)
很显然,关键字视图非常直观有效,使用的人可以很清晰的看到被录制对象的录制层次及运行步骤,比较适合那些对于业务操作流程熟悉的人员使用。但是,如果需要一些增强型的操作,那就需要切换到专家视图里进行了。
2ExpertView(专家视图)
QTP在关键字视图中的每个节点在专家视图中对应一行脚本。上面例子对应的脚本如下:(登录实例)
对于QTP来说,其核心编码语言是Visual Basic Script,因此,如果用户熟悉VBScript,可以运用自如的添加和更新语句,并通过编程方式增强测试和脚本,而这一切必须在专家视图中完成。
更为重要的是,有些操作是必须在专家视图中才可以完成的,例如:要处理动态对象、客户化报告、获取对象运行时的属性值(Run-time Value)等等,这些都必须通过专家视图中的VBScript编码完成。
然而,QTP里所有的操作都是基于对象进行的,所以我们必须对对象模型有一个基本了解,才可以在专家视图内进行Descriptive Programming
对象是:1)某种可为人所感知的物质;(2)思维、感受或动作所作用的物质或精神体;
属性是:1)属性是标识对象的特征之一;(2)最好能找出唯一识别对象的属性,或者通过属性的组合来判断对象的唯一性;(3)如果寻求不到与(2)所标识的属性时,可以用模糊的策略来识别出对象。
行为是:1)对象的特征之二,行为;(2)通过对象的不同的行为组合可以产生相同或者各异的结果;对于自动化测试来说,每个对象同样拥有自己的行为,在开发过程中称之为方法。比如:按钮是自动化测试常见对象,包括ClickDbClick等,自动化测试往往会通过这些按钮的行为去判别所产生的结果是否是我们所期待的。
测试对象(TO):QTP在脚本中创建的用于描述应用程序实际对象的对象。QTP存储这些信息用来在运行时识别和检查对象。简单的说,我们就可以把对象库中所保存的对象就看做为测试对象。
运行时对象(RO):是应用程序中的实际对象,对象的方法将在运行时被执行。
两者之间的关系:测试对象是为了识别运行时对象而存在的。QTP在录制的时候会把所操作的对象的一组属性及属性值,保存到对象库中,就是所谓的测试对象。在回放的时候,QTP就会根据对象库里的该对象的属性及属性值去匹配实际在应用程序中的运行时对象。一旦完全匹配正确就执行相应的操作。否则就会报“找不到该对象”的错。
相信大家在QTP中肯定都看到过这些方法,GetRoPropertyGetToPropertySetToProperty
GetRoProperty可以取到运行时对象属性的值。
GetToProperty;可以取到测试对象属性的值。
SetToProperty可以修改测试对象的属性值。
Example1:改变测试对象的属性
//创建一个WebEdit对象
Set webEdit=Browser(Browser).Page(“Page”).WebEdit(“txtName”)
//获取对象name
oldName= owebEdit.GetToProperty(“name”)
//修改对象为“new value
owebEdit.SetToPropertyname,new value
//获取对象新name
newName= owebEdit.GetToProperty(“name”)
Msgbox newName
1、对象库的保存:在对象库窗口,选择【Export Local objects】命令,便可以把对象库以str格式的文件导出到本地。
2、对象库的合并:在项目过程中,如果对象库是分裂状态的,最好是将其生成统一的对象库,其目的是为了让测试团队更好的维护和调用对象库。
2、[Resources]->[Object Repository Manager]->[Tool]->[OR Merge Tool]
2、[Primary file][Secondary file]中导入单个对象库,最后QTP会自动合并成一个新的对象库。
3、对象库共享引用:将对象库合并为一个公共对象库,这是一个非常好的调用维护的方法;结合这一方法,可以继续将用例脚本一一对应到这个公共对象库中;[Resources]->[Associate Repositories]->关联到需要的用例Action
3、

TAG:

蓝 引用 删除 测试我的梦   /   2012-02-15 15:59:52
1
 

评分:0

我来说两句

Open Toolbar