学习UFT11.5历程(二)
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历程(二)的更多相关文章
- 学习UFT11.5历程(三)
已经用UFT11.5完成了几个大流程的录制和脚本调测. 现整理下这段过程中脚本中应该记住的点(QTP是VB脚本): 1. 循环和条件部分_reporter结果展示 For i = 1 To brow ...
- 学习UFT11.5历程(一)
博主三年来测试都是功能测试 看了虫师的文章,感觉是要学点东西.所以,听从虫师的话,不被眼花瞭乱的测试技术打扰,先学习UFT,再学习python. 再不学习感觉要被淘汰了...... 也不想有谈工资的时 ...
- 我的MYSQL学习心得(十二) 触发器
我的MYSQL学习心得(十二) 触发器 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数 ...
- css学习归纳总结(二) 转
原文地址:css学习归纳总结(二) 标签与元素 <p>标签和p元素有什么区别呢?大多数时候他们表示的是同一样东西,但仍有细微的区别.<p>.<div>等指的是HTM ...
- 【Unity Shaders】学习笔记——SurfaceShader(二)两个结构体和CG类型
[Unity Shaders]学习笔记——SurfaceShader(二)两个结构体和CG类型 转载请注明出处:http://www.cnblogs.com/-867259206/p/5596698. ...
- Linux进程间通信IPC学习笔记之同步二(SVR4 信号量)
Linux进程间通信IPC学习笔记之同步二(SVR4 信号量)
- Linux进程间通信IPC学习笔记之同步二(Posix 信号量)
Linux进程间通信IPC学习笔记之同步二(Posix 信号量)
- VSTO 学习笔记(十二)自定义公式与Ribbon
原文:VSTO 学习笔记(十二)自定义公式与Ribbon 这几天工作中在开发一个Excel插件,包含自定义公式,根据条件从数据库中查询结果.这次我们来做一个简单的测试,达到类似的目的. 即在Excel ...
- 我的MYSQL学习心得(十二)
原文:我的MYSQL学习心得(十二) 我的MYSQL学习心得(十二) 我的MYSQL学习心得(一) 我的MYSQL学习心得(二) 我的MYSQL学习心得(三) 我的MYSQL学习心得(四) 我的MYS ...
随机推荐
- hduoj 1286 找新朋友
http://acm.hdu.edu.cn/showproblem.php?pid=1286 找新朋友 Time Limit: 2000/1000 MS (Java/Others) Memory Li ...
- WebForm Repeater使用
Repeater: HeaderTemplate: 在加载开始执行一遍 ItemTemplate : 有多少条数据,执行多少遍 FooterTemplate :在加载最后执行一遍 Alternatin ...
- nodejs require//////////z
背景 这篇文基本都是反对的,反对的很有道理,不是说我这篇文章的内容错误,因为这篇文章是我在健身房学习node的时候写的,这些知识都很粗糙,后来发现官方的稳定更详细:地址:http://nodejs.o ...
- Word2013中制作按钮控件
1.由于“开发工具”不经常用,所以在功能选项面板中没有“开发工具”这一栏.所以我们需要设置.在功能选项面板中选择“文件”,在跳转出来的版面中选择“选项”.
- [原创]Visual Studio 使用 Just My Code引起无法断点
今天遇到的问题,同样的代码,在一台机器上用Release配置可以命中断点,在另一台上用Release断点就都失效了.后来发现是因为断点失效的机器上设置了Just My Code.在Debug-Opti ...
- Jenkins Slave 通过JNLP 的方式 访问Master IP 总是127.0.0.1
解决办法,重启机器 可能是我以前用的jenkins url 是127.0.0.1 然后是缓存什么没有释放掉所致 <jnlp codebase="http://183.62.104.48 ...
- 用node.js给图片加水印
一.准备工作: 首先,确保你本地已经安装好了node环境.然后,我们进行图像编辑操作需要用到一个Node.js的库:images.这个库的地址是:https://github.com/zhangyua ...
- java获取文件的md5值
import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import ja ...
- Mvc 模块化开发
在Mvc中,标准的模块化开发方式是使用Areas,每一个Area都可以注册自己的路由,使用自己的控件器与视图.但是在具体使用上它有如下两个限制 1.必须把视图文件放到主项目的Areas文件夹下才能生效 ...
- 勇者斗恶龙UVa11292 - Dragon of Loowater
https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=24&page=s ...