Joan2005 发表于 2006-9-30 11:32:09

有一个步骤QTP录制不了.

我在录制过程中,把添加的数据(类别,标题)参数化后,脚本运行成功.但有一点疑问,在运行到提交时,提示"请填写内容".我内容是已经填写过的.,后来查询数据库发现没有新添加的记录.然后执行单步调试.发现添加类别和标题都能录制,到添加的内容时就录制不上了.大家有没有遇到这种情况?是什么原因呢?倥件的问题?后来我录制用雅虎信箱写信的过程,信件内容同样录制不上.

[ 本帖最后由 Joan2005 于 2006-9-30 11:34 编辑 ]

lyscser 发表于 2006-9-30 12:21:49

录不上就写

QA_BAY 发表于 2006-9-30 16:44:20

可以的.你的脚本是什么.
用SPY看一下可以侦查吗?

qrz2000 发表于 2006-9-30 17:28:02

我觉得可能不支持那编辑控件.
我原先也碰到过,在脚本中使用type函数输入吧.

xiaonan 发表于 2006-10-2 21:41:14

看看你那个是什么控件,可能QTP没有识别,试试虚拟控件

Joan2005 发表于 2006-10-9 10:01:26

脚本如下:红色部分是用object spy识别的对象后的属性.运行还是有错.自己写这段脚本的话该如何写呢?
Browser("网站后台管理系统").Page("网站后台管理系统").WebEdit("AdminUID").Set "admin"
Browser("网站后台管理系统").Page("网站后台管理系统").WebEdit("AdminPWD").SetSecure "451dd3398a47a82e2c5c"
Browser("网站后台管理系统").Page("网站后台管理系统").WebButton("登 录").Click
Browser("网站后台管理系统").Page("xx网络WEB后台管理系统").Frame("leftmenu").Link("文章管理").Click
Browser("网站后台管理系统").Page("xx网络WEB后台管理系统").Frame("leftmenu").Link("文章增加").Click
Browser("网站后台管理系统").Page("xx网络WEB后台管理系统").Frame("right").WebList("class").Select "公司新闻"
Browser("网站后台管理系统").Page("xx网络WEB后台管理系统").Frame("right").WebEdit("title").Set "GONCOMPAN1"
webElement("intertext:=sdfgsdf")
Browser("网站后台管理系统").Page("xx网络WEB后台管理系统").Frame("right").WebButton("提交").Click
Browser("网站后台管理系统").Dialog("Microsoft Internet Explorer").WinButton("确定").Click

下图是object spy识别后的属性窗体.

[ 本帖最后由 Joan2005 于 2006-10-11 21:21 编辑 ]

Joan2005 发表于 2006-10-11 09:54:30

已经解决!(下边录制的是呀户信箱写信过程)
如图在没有识别的控件单击右键,view/add object--->Ok--->add to object repository(如果对象库中有该对象则显示view object repository).
然后在没有录制上那一步加上语句,
browser("雅虎免费邮箱").Page("Yahoo!电邮 - yihongwp@yahoo.com._2").Frame("Frame").WebElement("WebElement").Object.innerText="gjk"
就OK了。
不知道这是什么方法.

然后我利用虚拟对象,该如何实现呢.步骤
1.先添加虚拟对象tools--virtual object---new virtual object.利用wizard完成(选择check box class).
(打开一个新的测试,先添加虚拟对象,然后到对象库中,仍然为空,并没有该对象)
2.重新录制
3.在没有录制上那一步上添加语句
(我添加的不正确,不帖了)
我再试一试.

[ 本帖最后由 Joan2005 于 2006-10-11 12:57 编辑 ]

wangpai555 发表于 2006-10-11 15:01:29

插件不能识别吧。

QA_BAY 发表于 2006-10-11 15:34:57

原帖由 Joan2005 于 2006-10-11 09:54 发表
已经解决!(下边录制的是呀户信箱写信过程)
如图在没有识别的控件单击右键,view/add object--->Ok--->add to object repository(如果对象库中有该对象则显示view object repository).
然后在没有录制上那一 ...
browser("雅虎免费邮箱").Page("Yahoo!电邮 - yihongwp@yahoo.com._2").Frame("Frame").WebElement("WebElement").Object.innerText="gjk"

不知道这是什么方法.
--JS语言,你可以在网上找一下!

[ 本帖最后由 QA_BAY 于 2006-10-11 15:40 编辑 ]

我要做SQAD 发表于 2006-10-11 16:33:22

虚拟对象好像是根据坐标来确定控件的万一坐标不对了,那应该就不能识别了吧。那个控件应该是iframe控件,一般QTP是识别不出来的。我之前也用楼主方法灌过水。结果被封了帐号,哈哈。

ghx 发表于 2007-1-17 11:21:49

谢谢Joan2005,按照你的方法解决了该问题。

hiyizhiyu 发表于 2007-1-17 16:48:26

这种方法比较好
thanks for share

kevin_swpi 发表于 2007-1-18 10:56:12

楼上的朋友
你们所谓的解决了是什么意思
我也遇到这样的问题了
虽然象这样的方法

browser("雅虎免费邮箱").Page("Yahoo!电邮 - yihongwp@yahoo.com._2").Frame("Frame").WebElement("WebElement").Object.innerText="gjk"

虽然运行到这一步查看时是实现了写入
但是在点最后一步提交按钮后仍然是不成功的(他提示你输入框不能为空)

为什么呢

xueboy118 发表于 2007-1-18 11:12:12

这种类似的情况我也遇到,我碰到情况是,在页面的文本编辑框中输入值后,叶面的实际处理是,把个文本编辑框中的值,传递给页面的一个隐藏得控件,点击“提交”按钮,由隐藏的控件把值传给后台处理,实际在录制过程中,按照一般正常的录制流程是录制不到这一步骤地,但是可以解决的。
在录制的时候,如果录制到要在该文本框中输入值得时候,在作该动作之前,用alt+Tab切换到QTP,点击图标按钮“low level recording”,在切换到录制页面接着录制,录制完该操作步骤后,在切换回QTP,在点击一次图标按钮“low level recording”,进行正常的录制即可。
有的时候,使用这种方法,一次录制不成功,得多试几次,可能跟机器原因有关吧,呵呵

kevin_swpi 发表于 2007-1-18 12:07:43

“low level recording"?
在那?
有什么作用呢

gzj_06 发表于 2007-6-27 16:07:24

呵呵,今天用QTP小试牛刀,就碰到这个问题,到精华区一找,果然找到了解决办法,太感谢了!

moonboy678 发表于 2008-1-23 13:14:11

终于试验成功了。。

nikilee 发表于 2008-4-23 21:08:43

我是新手,来学习下.谢谢楼主分享

qicyt1812 发表于 2008-6-17 22:16:07

这个问题我也遇到过,可能是因为控件无法识别造成的,解决方法没来得及试验,等电脑配置好一定好好试验一下:lol

lijian422202 发表于 2008-7-16 15:38:57

原帖由 kevin_swpi 于 2007-1-18 10:56 发表 http://bbs.51testing.com/images/common/back.gif
楼上的朋友
你们所谓的解决了是什么意思
我也遇到这样的问题了
虽然象这样的方法

browser("雅虎免费邮箱").Page("Yahoo!电邮 - yihongwp@yahoo.com._2").Frame("Frame").WebElement("WebElement").Object.inne ...
这个问题解决了吗?你说的其实只是解决了text文本的写入,但没有把ID传到页面中,程序是根据ID来判断是否为空的。我现在也遇到这个问题了。
页: [1] 2
查看完整版本: 有一个步骤QTP录制不了.