51Testing软件测试论坛

标题: 如何获得二级菜单下的对象 [打印本页]

作者: 悠然自在    时间: 2013-10-21 10:36
标题: 如何获得二级菜单下的对象
本帖最后由 悠然自在 于 2013-10-21 13:32 编辑

[attach]87628[/attach]1、当鼠标放在“服装”时,会显示二级菜单。我如何使用QTP获得这个二级对象。、
我采取了录制,但是没有办法将此对象放到共享对象库中。在线等。。。。求各位高手援助
作者: joykao    时间: 2013-10-21 13:39
抛开录制,自己添加到对象库
作者: 悠然自在    时间: 2013-10-21 13:41
回复 2# joykao


    就是自己没有办法添加进去啊,我才录制的。
作者: joykao    时间: 2013-10-21 13:47
回复 3# 悠然自在


不是吧,你那2级对象怎么出来的?是鼠标放上去就出来么?那也好添加啊,在添加时按住ctrl键这时就再把鼠标放上去,然后当菜单出现这时再添加。。。不就可以了么?
作者: 悠然自在    时间: 2013-10-21 14:15
回复 4# joykao


    还是不行。就是这个网址的“www.kuaidianding.com”,按地区、按消费等。
作者: 悠然自在    时间: 2013-10-21 14:54
回复 4# joykao


    点击2级对象时,应该进入新的页面;但是目前没有进入新的页面,也没有报错。是什么个原因。谢谢谢谢~~~~
作者: joykao    时间: 2013-10-21 15:21
回复 6# 悠然自在


    不是吧。。你添加到对象库成功了有没有加相应的代码呢?把你刚刚加的对象拖一下到编辑器中。。。从Test Objects里面直接拖,个人试过了,,完全有效
作者: 悠然自在    时间: 2013-10-21 15:37
回复 7# joykao [attach]87630[/attach]
我就是从test object拖的,运行之后就是没有反应。
Browser("快点订首页").Page("快点订 - 餐厅,美食,订餐,预订,外卖").WebElement("崇安区").Click
wait 2
msgbox "end"
气死了。。。。
作者: joykao    时间: 2013-10-21 15:47
回复 8# 悠然自在


    别急啊。。。你的对象库对象看着有点乱。。。试试如下重新来过的方法
1.删掉你现在的对象库对象
2.重新打开IE打开到首页
3.切换到QTP
4.ctrl+R
5.点击添加崇安区到对象库
6.切换到qtp编辑器
7.拖拽左边的崇安那个对象到编辑器
8.(保持IE 页面是首页)
9.运行
10观察页面跳转
作者: 悠然自在    时间: 2013-10-21 17:09
回复 9# joykao
谢谢你的帮忙;我重新新建了一个TEST,按照您说步骤重新获取对象。执行操作。
但是,根本就没有对“崇安区”执行点击操作。这是怎么回事啊。
作者: joykao    时间: 2013-10-21 17:31
回复 10# 悠然自在


    相当奇怪,我怎么就可以呢?也没有错误报出?
作者: joykao    时间: 2013-10-21 17:35
回复 10# 悠然自在


    你的运行时设置是不是还是那个录制时设置的那个?改下设置吧,选择第一个在任何开着的浏览器下运行
作者: feiyunkai    时间: 2013-10-21 17:57
Browser("快点订 - 餐厅,美食,订餐,预订,外卖").Page("快点订 - 餐厅,美食,订餐,预订,外卖").WebElement("按地区").FireEvent "onmouseover"
If Browser("快点订 - 餐厅,美食,订餐,预订,外卖").Page("快点订 - 餐厅,美食,订餐,预订,外卖").WebElement("南长区").Exist(2) Then
        Browser("快点订 - 餐厅,美食,订餐,预订,外卖").Page("快点订 - 餐厅,美食,订餐,预订,外卖").WebElement("南长区").Click
End If
作者: feiyunkai    时间: 2013-10-21 18:01
回复 1# 悠然自在
'将鼠标移动到“按地区”这个对象上
Browser("快点订 - 餐厅,美食,订餐,预订,外卖").Page("快点订 - 餐厅,美食,订餐,预订,外卖").WebElement("按地区").FireEvent "onmouseover"

'判断2秒内“南长区” 对象是否出现,出现则点击,未出现则失败
If Browser("快点订 - 餐厅,美食,订餐,预订,外卖").Page("快点订 - 餐厅,美食,订餐,预订,外卖").WebElement("南长区").Exist(2) Then

        Browser("快点订 - 餐厅,美食,订餐,预订,外卖").Page("快点订 - 餐厅,美食,订餐,预订,外卖").WebElement("南长区").Click
esle
        print "未找到对象:南长区"
End If
作者: 悠然自在    时间: 2013-10-22 10:16
回复 14# feiyunkai


    按照您讲的方法,操作了一次;但是鼠标没有移到“按地区”的对象上;而上移到了左上角。不知何因。请帮忙分析下。谢 谢
作者: 悠然自在    时间: 2013-10-22 10:17
回复 12# joykao


    我现在就是任何开着的浏览器下运行。郁闷。。。。
作者: 悠然自在    时间: 2013-10-22 10:45
回复 14# feiyunkai


    谢谢,问题解决了。没有找到原因。重新整理了对象库。
作者: 悠然自在    时间: 2013-10-22 10:48
回复 12# joykao


     谢谢,问题解决了。没有找到原因。重新整理了对象库。
作者: 悠然自在    时间: 2013-10-22 11:46
回复 15# 悠然自在


    有没有什么办法,随便点击某个地区。也就是说“南长区”是另外值的时候,也用这个方法。但是不想一个个写出来。是不是要对webElement(“南长区”)进行参数化啊。
相深一步了解和学习。求指点,谢谢
作者: joykao    时间: 2013-10-22 13:33
回复 19# 悠然自在
把所有的区都点一遍是可以的,你可以把那个区对象的innertext属性参数化掉,然后在datatable里填入你所有的区名。。。
作者: 悠然自在    时间: 2013-10-22 21:00
回复 20# joykao


    明白了,谢谢。
作者: 悠然自在    时间: 2013-10-23 11:12
回复 20# joykao


    还是不太明白。只会对属性值进行参数化。
现在是对对象库中对象进行参数化。
网上大部分都讲的是通过描述性编程来参数化。我希望能够通过对象库来实现对象参数化。求解
作者: joykao    时间: 2013-10-23 11:22
回复 22# 悠然自在

对象库参数化刚刚的把innertext参掉了不就是了么?你想把对象参数化成什么样呢?至于描述性编程你也可以试试啊。。。。
作者: 悠然自在    时间: 2013-10-23 12:52
回复 23# joykao


    如何参数提。我点击后面的<#>,打开的parameter前面的单选按钮不可选
作者: joykao    时间: 2013-10-23 12:56
回复 24# 悠然自在
怎么会不能选择呢?[attach]87647[/attach]
作者: 悠然自在    时间: 2013-10-23 13:15
[img][/img]回复 25# joykao [attach]87648[/attach]我的是灰色的
作者: 悠然自在    时间: 2013-10-23 13:16
回复 25# joykao


    我的QQ:1944095196;能否加我。谢谢
作者: joykao    时间: 2013-10-23 13:18
回复 27# 悠然自在


    额。。。上班不用QQ,下班才会用,下班加
作者: joykao    时间: 2013-10-23 13:46
回复 26# 悠然自在


    连datatable都没有。。。。。
作者: 悠然自在    时间: 2013-10-23 15:12
回复 29#
我用了描述性编程,给描述性对象赋了很多属性值,但是就是找不到该对象。
[attach]87649[/attach]

作者: joykao    时间: 2013-10-23 16:43
回复 30# 悠然自在


哪个教你这么描述的?哎。。。疯掉了。。。你还是去好好了解下描述性编程先
作者: 悠然自在    时间: 2013-10-23 17:26
回复 31# joykao


    因为此对象的innertext,outertext,innerhtml的三个属性值是一样的。
刚开始使用了第一个属性,但是不起作用。才加了几个属性。
我基础差,刚接触这块。是多想看看。不过,公司准备自动化测试,自己也感兴趣。边用边学吧。
作者: joykao    时间: 2013-10-23 20:37
回复 32# 悠然自在


买本书看看吧。。QTP论坛版主赵旭斌的精通QTP-自动化测试领航
作者: mr.bee    时间: 2013-11-5 15:49
答案就是14L的FireEvent
就差你再百度一下了。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2