QTP描述性语言编写心得 [ 光影人像 东海陈光剑 的博客 ]
2015-01-28 17:51
246 查看
这周大部分时间都在使用描述性语言编写脚本,之前关于描述性语言宝驹同学也曾写过一些介绍,大家可以参考一下。个人感觉使用该种方式编写脚本的一个最大好处就在于省去管理对象库的成本,但其实对象这个概念并没有放弃,只是通过我们脚本的描述来定义对象,这个时候,如何更准确的描述对象,让脚本运行时更好的定位到,是该种方式的核心之处。
以点击页面的搜索按钮为例,语句如下:Browser("title:=.*").Page("url:=.*").WebButton("html id:=DoSearch").Click由于当前只打开一个ie,故可以使用“.*”通配符来定义页面,若页面多于一个时,需要同时指定浏览器和页面。需要注意的是,某一对象的属性是多元的,当使用一个属性仍然无法唯一确定该对象时可以使用多个属性来定义某一个对象,写法如下:对象类型名("属性名1:=属性值2","属性名1属性值2"),即多个属性用“,”分割。
可能大家习惯使用QTP自带的Object Spy来获取对象的属性,但在这里我想推荐大家结合ie developer toolbar中的find功能来更为准确获取元素的属性(这里需要感谢一下士忠同学的友情提醒和帮助),因为QTP识别对象时本身也会对对象进行一次封装,有可能不够准确,我在定义某个页面的WebRadioGroup时就遇到过qtp将两个对象封装为一个对象,当使用qtp识别的结果来定义后,脚本运行时无法找到该对象,后来发现实为两个对象,在对该对象添加了一个唯一的属性定义后即可正确识别,此外,由于对象的属性是多元的,所以更加需要我们选择有效唯一的属性来识别,尽可能多用类似html id这样唯一的属性来定义(这个时候也可以借助ie developer toolbar的find功能来判定),还有一种特殊的情况需要注意的是,有时候我们发现对象像html id这样的属性值显示为空,这个时候如果能判断该对象的类型在这个页面中是唯一的,同意可以用赋值为空来表示,如"html id:=",当然该种方式并不推荐使用。
以上就是这两天我在使用描述性语言编写脚本的一些经验总结,希望能和大家一起进行更多的讨论。
我们从来只做一件事,分享.
让美在这个世界流转
让倍感无趣的 受伤的 彷徨的 孤独的 或是心情忧郁的 人生黯淡的人们
能有一次机会
去再一次发现这个世界的美
并把美传递给他人
---光影人像(Follow WeChat public number with interest)
以点击页面的搜索按钮为例,语句如下:Browser("title:=.*").Page("url:=.*").WebButton("html id:=DoSearch").Click由于当前只打开一个ie,故可以使用“.*”通配符来定义页面,若页面多于一个时,需要同时指定浏览器和页面。需要注意的是,某一对象的属性是多元的,当使用一个属性仍然无法唯一确定该对象时可以使用多个属性来定义某一个对象,写法如下:对象类型名("属性名1:=属性值2","属性名1属性值2"),即多个属性用“,”分割。
可能大家习惯使用QTP自带的Object Spy来获取对象的属性,但在这里我想推荐大家结合ie developer toolbar中的find功能来更为准确获取元素的属性(这里需要感谢一下士忠同学的友情提醒和帮助),因为QTP识别对象时本身也会对对象进行一次封装,有可能不够准确,我在定义某个页面的WebRadioGroup时就遇到过qtp将两个对象封装为一个对象,当使用qtp识别的结果来定义后,脚本运行时无法找到该对象,后来发现实为两个对象,在对该对象添加了一个唯一的属性定义后即可正确识别,此外,由于对象的属性是多元的,所以更加需要我们选择有效唯一的属性来识别,尽可能多用类似html id这样唯一的属性来定义(这个时候也可以借助ie developer toolbar的find功能来判定),还有一种特殊的情况需要注意的是,有时候我们发现对象像html id这样的属性值显示为空,这个时候如果能判断该对象的类型在这个页面中是唯一的,同意可以用赋值为空来表示,如"html id:=",当然该种方式并不推荐使用。
以上就是这两天我在使用描述性语言编写脚本的一些经验总结,希望能和大家一起进行更多的讨论。
我们从来只做一件事,分享.
让美在这个世界流转
让倍感无趣的 受伤的 彷徨的 孤独的 或是心情忧郁的 人生黯淡的人们
能有一次机会
去再一次发现这个世界的美
并把美传递给他人
---光影人像(Follow WeChat public number with interest)
相关文章推荐
- qtp描述性语言的应用 [ 光影人像 东海陈光剑 的博客 ]
- 手工编写QTP测试脚本 [ 光影人像 东海陈光剑 的博客 ]
- 使用QTP管理wap页面对象心得小结 [ 光影人像 东海陈光剑 的博客 ]
- QTP工作原理的学习心得 [ 光影人像 东海陈光剑 的博客 ]
- 使用QC和QTP构建自动测试体系 [ 光影人像 东海陈光剑 的博客 ]
- 使用QC远程启动QTP [ 光影人像 东海陈光剑 的博客 ]
- QTP调用自己开发的.net类库 [ 光影人像 东海陈光剑 的博客 ]
- 使用QTP从excell表中拷贝数据到数据库表中 [ 光影人像 东海陈光剑 的博客 ]
- QTP脚本触发WEB客户端控件的事件 [ 光影人像 东海陈光剑 的博客 ]
- 有关用描述性编程做脚本 [ 光影人像 东海陈光剑 的博客 ]
- loadrunner socket脚本的编写 [ 光影人像 东海陈光剑 的博客 ]
- QTP对于WEB中ActiveX控件的识别 [ 光影人像 东海陈光剑 的博客 ]
- 我所使用过的配置管理工具 [ 光影人像 东海陈光剑 的博客 ]
- [ 光影人像 东海陈光剑 的博客 ]
- 利用web_custom_request函数来替代传统http/html的性能脚本 [ 光影人像 东海陈光剑 的博客 ]
- 管理QTP测试脚本的对象仓库 [ 光影人像 东海陈光剑 的博客 ]
- 关于。。。 [ 光影人像 东海陈光剑 的博客 ]
- 男厕所的小便斗 [ 光影人像 东海陈光剑 的博客 ]
- 团队介绍 [ 光影人像 东海陈光剑 的博客 ]
- Beta测试 [ 光影人像 东海陈光剑 的博客 ]