- 1、本文档共63页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
QTP之描述性编程讲述
QTP;描述性编程(DescriptiveProgramming);描述性编程简介;掌握描述性编程的两种写法;它是一个对象库,里面添加了一些需要操作的
百度网站的对象。接下来我们来看代码的实现:
Browser(百度一下,你就知道).Page(百度一下,你就知道)._
WebEdit(wd).Set QTP自动化测试技术领航
Browser(百度一下,你就知道).Page(百度一下,你就知道)._
WebButton(百度一下).Click;描述性编程; QTP提供了描述性编程(Descriptive Programming)这个解决方案。
事实上,在很多情况下,对象都不会顺我们的意思,经常会面临“不是我们想不想把对象添加到对象库,而是根本没法添加”这种尴尬局面。所以,此时“DP”可以担起重任了,替“ORP”完成它无法完成的事!
现在把之前添加好的百度的对象全部删除!;
已经没有对象供我们使用了,怎么办?当前需要做的唯一的一件事???“照搬”!搬什么?虽然对象库里的对象没了,但是我们完全可以将对象库中的内容直接搬迁到脚本中去。又是什么内容是需要搬迁到Expert View中去的呢?—就是我们所要用的对象的一个个属性及其属性值,一起来看下是怎么搬迁的,如下所示:;
代码1
Browser(micClass:=Browser).Page(micClass:=Page)._
WebEdit(name:=wd).Set QTP自动化测试技术领航
代码2
Browser(micClass:=Browser).Page(micClass:=Page)._
WebButton(name:=百度一下).Click。
;★描述性编程大解析(第一种)。
整个搬迁过程完成了,这就是描述性编程,最简单地说,DP无非就是在描述每个对象的属性和属性值,通过这个原理来虚拟成对象库中的对象,只是对象库是隐形的。;;;代码1
Browser(micClass:=Browser).Page(micClass:=Page)._
WebEdit(html?tag:=?INPUT,name:=wd).Set?QTP自动化测试技术领航
代码2
Browser(micClass:=Browser).Page(micClass:=Page)._
WebButton(html?tag:=?INPUT,name:=百度一下,type:=?submit).Click;; 第二条规则,那就是如果父对象描述了,子对象则一定要描述,不然QTP会报错,来看下面这个示例脚本:
正确 – 父对象如果描述了,子对象必须描述
Browser(micClass:=Browser).Page(micClass:=Page)._
WebEdit(name:=wd).Set QTP自动化测试技术领航
错误 – 父对象描述了,子对象没有描述
Browser(micClass:=Browser).Page(百度一下,你就知道)._
WebButton(百度一下).Click; 第三个原则,子对象如果描述了,父对象可以不描述,当然,父对象不描述又不报错的前提是要被添加到对象库中,一起来看下面这个示例脚本:
Browser(百度一下,你就知道).Page(百度一下,你就知道).WebEdit(name:=wd).Set QTP自动化测试技术领航;★描述性编程大解析(第二种)。
那就是使用Description对象。使用该对象可以返回包含一组Property对象的Properties集合对象。Property对象由属性名和值组成。然后,可以在语句中指定用返回的Properties集合代替对象名(每个Property对象都包含一个属性名和值)。; 要创建Properties集合,需要先创建Properties对象,使用以下语法进行:
Set ObjDescription = Description.Create()
创建完毕后,就可以在运行会话期间在Properties对象中添加、编辑、删除或检索属性和属性值了。也可以这么理解,就是将对象的属性及其属性值的描述封装在一个特殊的Description对象中。;例如,假设现在需要完成以下这个操作,见下面这个脚本:
Browser(micClass:=Browser).Page(micClass:=Page)._
WebEdit(html tag:= INPUT,name:=wd).Set QTP自动化测试技术领航;Set ObjBrowser = Description.Create()
ObjBrowser(micClass).Value =
文档评论(0)