1. QTP对象TO与RO

TO: test object. 本地对象库里的封装对象

RO:run object. 运行封装对象

和TO、RO相关的几个函数有:
GetTOProperty(“属性名”):取某个属性的值
GetTOProperties():取所有属性的值
SetTOProperty(“属性名”,设置值):设置某个属性的值,如果页面通用元素数量多,可以只录制一个再动态设置index
GetROProperty():取某个属性的值,实际属性值,如页面某个动态元素webedit取其值

通常用法:

SetTOProperty()定义TO,以灵活的操作RO,修改的对象属性是临时的
此处很重要,由于共享对象库经常被人修改,所以在运行时通过SetTOProperty()方法定义此时的对象库TO,使得对象库的属性值处于可控中,以解决:共享对象库的修改和管理问题

例:在对象库里只设置一个按钮对象AnyButton,label特征属性值填任意值,然后用下面脚本执行测试
Browser.Page.Webbutton.SetTOProperty(\"label\", \"**\")
Browser.Page.Webbutton.Click

2. 对象识别方法

1)添加对象库

经常要调用的对象可以将其定义为一个对象变量,方便以后调用

2)描述性编程

使用描述性编程不依赖对象库,通过对象条件描述,在运行时层层查找来识别对象。

使用时机:

a. 界面元素动态出现或动态变化

b. 通用对象

使用逻辑:

查找不从对象库查找,而是运行时创建的临时对象版本

使用提醒:

如果对象结构中某一层开始使用描述性编程,则后续子对象都要用描述性编程识别。

举例:

Browser().Page("text:=**","Name:=**")

:=用于描述属性和属性值,两侧不能有空格

3)Description对象

Description是先定义条件,运行时查找是不是有符合条件的对象

Dim oDesc

Set oDesc=Description.Create

oDesc("micclass").value="link"

oDesc("text").value="Images"

oDesc.Highlight/ Msgbox oDesc.Count   '检查对象是否找到

3.页面未加载完导致控件无法识别的问题

1)设置等待时间

wait(20)

2) 页面同步

Browser().Sync    '等待网页下方显示完成

Browser().Page().Sync    ‘等待网页页面元素完全显示,通常用page同步

4. With用法

With object

  statement

End With

对一个对象执行一系列的语句

Edit-->Format-->Apply "with" to script

常用于属性修改:

With Mylabel

  .Height=200

  .Weight=200

  .Caption="测试label"

End With

学习UFT11.5历程(二)的更多相关文章

  1. 学习UFT11.5历程(三)

    已经用UFT11.5完成了几个大流程的录制和脚本调测. 现整理下这段过程中脚本中应该记住的点(QTP是VB脚本): 1. 循环和条件部分_reporter结果展示 For i = 1 To brow  ...

  2. 学习UFT11.5历程(一)

    博主三年来测试都是功能测试 看了虫师的文章,感觉是要学点东西.所以,听从虫师的话,不被眼花瞭乱的测试技术打扰,先学习UFT,再学习python. 再不学习感觉要被淘汰了...... 也不想有谈工资的时 ...

  3. 我的MYSQL学习心得(十二) 触发器

    我的MYSQL学习心得(十二) 触发器 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数 ...

  4. css学习归纳总结(二) 转

    原文地址:css学习归纳总结(二) 标签与元素 <p>标签和p元素有什么区别呢?大多数时候他们表示的是同一样东西,但仍有细微的区别.<p>.<div>等指的是HTM ...

  5. 【Unity Shaders】学习笔记——SurfaceShader(二)两个结构体和CG类型

    [Unity Shaders]学习笔记——SurfaceShader(二)两个结构体和CG类型 转载请注明出处:http://www.cnblogs.com/-867259206/p/5596698. ...

  6. Linux进程间通信IPC学习笔记之同步二(SVR4 信号量)

    Linux进程间通信IPC学习笔记之同步二(SVR4 信号量)

  7. Linux进程间通信IPC学习笔记之同步二(Posix 信号量)

    Linux进程间通信IPC学习笔记之同步二(Posix 信号量)

  8. VSTO 学习笔记(十二)自定义公式与Ribbon

    原文:VSTO 学习笔记(十二)自定义公式与Ribbon 这几天工作中在开发一个Excel插件,包含自定义公式,根据条件从数据库中查询结果.这次我们来做一个简单的测试,达到类似的目的. 即在Excel ...

  9. 我的MYSQL学习心得(十二)

    原文:我的MYSQL学习心得(十二) 我的MYSQL学习心得(十二) 我的MYSQL学习心得(一) 我的MYSQL学习心得(二) 我的MYSQL学习心得(三) 我的MYSQL学习心得(四) 我的MYS ...

随机推荐

  1. Leetcode: Heaters

    Winter is coming! Your first job during the contest is to design a standard heater with fixed warm r ...

  2. jtree添加节点

    利用Model添加了节点之后,需要reload树

  3. WebForm Repeater使用

    Repeater: HeaderTemplate: 在加载开始执行一遍 ItemTemplate : 有多少条数据,执行多少遍 FooterTemplate :在加载最后执行一遍 Alternatin ...

  4. 夺命雷公狗----Git---7---GitHub当仓库本地使用(完)

    首先我们将github上的东西克隆到本地: 然后在本地创建一个文件夹,然后进入git命令行: 成功后如下所示: 将仓库里面的内容给克隆到本地了... 然后创建一个index.html然后添加进去: 在 ...

  5. yii2得到的数据对象转化成数组

    yii2得到的数据对象转化成数组需要用到asArray().1.Customer::find(['id' => $id])->asArray()->one();2.$model = ...

  6. .NET 泛型分析

    .NET 泛型解析 一.问题背景 我们在编程的时候往往因为需要处理不同类型的数据或者对象,重复编写很多类似的代码,造成代码的冗余,代码也显得不那么优雅,泛型的出现,正好是为了解决这个问题,实现继承. ...

  7. Openstack的nova-network的vlan模式扩展

    openstack的nova-network的vlan模式是可以在安装的时候,将网络划分为多个子网,每个项目一个或者多个子网进行虚拟机创建.但是他现在代码级别上不支持:如果一开始安装的环境的vlan网 ...

  8. PhpStorm创建Drupal模块项目开发教程(2)

    通常支持Drupal HOOK的文件为.module.首先我们需要在这里对它进行声明,以便索引,并且在代码完成中使用Ctrl+Space(空格)完成HOOK实现. Drupal HOOK调用,通常情况 ...

  9. push or get File or Folder using scp wrapped with expect and bash

    经常需要把服务器的某些文件传到 Mac,或者获取 Mac 的一些文件到服务器.尽管有很多命令scp, ftp, rsync都可以,霸特每次都有敲好长的命令,好烦,而且还要输入密码.所以想着 wrap ...

  10. php 自动绑定di容器实现

    <?php class Bim { public function doSth() { echo __METHOD__.PHP_EOL; } } class Bar { protected $b ...