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. hduoj 1286 找新朋友

    http://acm.hdu.edu.cn/showproblem.php?pid=1286 找新朋友 Time Limit: 2000/1000 MS (Java/Others) Memory Li ...

  2. WebForm Repeater使用

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

  3. nodejs require//////////z

    背景 这篇文基本都是反对的,反对的很有道理,不是说我这篇文章的内容错误,因为这篇文章是我在健身房学习node的时候写的,这些知识都很粗糙,后来发现官方的稳定更详细:地址:http://nodejs.o ...

  4. Word2013中制作按钮控件

    1.由于“开发工具”不经常用,所以在功能选项面板中没有“开发工具”这一栏.所以我们需要设置.在功能选项面板中选择“文件”,在跳转出来的版面中选择“选项”.

  5. [原创]Visual Studio 使用 Just My Code引起无法断点

    今天遇到的问题,同样的代码,在一台机器上用Release配置可以命中断点,在另一台上用Release断点就都失效了.后来发现是因为断点失效的机器上设置了Just My Code.在Debug-Opti ...

  6. Jenkins Slave 通过JNLP 的方式 访问Master IP 总是127.0.0.1

    解决办法,重启机器 可能是我以前用的jenkins url 是127.0.0.1 然后是缓存什么没有释放掉所致 <jnlp codebase="http://183.62.104.48 ...

  7. 用node.js给图片加水印

    一.准备工作: 首先,确保你本地已经安装好了node环境.然后,我们进行图像编辑操作需要用到一个Node.js的库:images.这个库的地址是:https://github.com/zhangyua ...

  8. java获取文件的md5值

    import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import ja ...

  9. Mvc 模块化开发

    在Mvc中,标准的模块化开发方式是使用Areas,每一个Area都可以注册自己的路由,使用自己的控件器与视图.但是在具体使用上它有如下两个限制 1.必须把视图文件放到主项目的Areas文件夹下才能生效 ...

  10. 勇者斗恶龙UVa11292 - Dragon of Loowater

    https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=24&page=s ...