caicai2012 发表于 2012-11-19 17:21:02

求高手指点,QTP11录制的时候无法识别文本编辑器

QTP11录制WEB后台的文本编辑器无法识别,直接用步骤生成器,识别成webelement,直接插入就成下面了

Browser("商城、商户登录").Page("商品信息填写").Frame("Frame_2").WebElement("WebElement").Click


该怎么办呢,我是想输入文字的,界面如下

赵佳乐SMILE 发表于 2012-11-20 10:26:03

本帖最后由 赵佳乐SMILE 于 2012-11-20 10:30 编辑

用论坛的编辑器试验了一下 确实用我的方法读取不到 论坛spy出来也是WebElement 先把webElement加入对象库


Browser("求高手指点,QTP11录制的时候无法识别文本编辑器").Page("求高手指点,QTP11录制的时候无法识别文本编辑器").Link("求高手指点,QTP11录制的时候无法识别文本编辑器").Click
Browser("求高手指点,QTP11录制的时候无法识别文本编辑器").Page("求高手指点,QTP11录制的时候无法识别文本编辑器_2").Link("回复").Click
Browser("求高手指点,QTP11录制的时候无法识别文本编辑器").Page("求高手指点,QTP11录制的时候无法识别文本编辑器_2").Link("高级模式").Click
str="<table><tr><td>数据1</td><td>数据2</td></tr></table>"
Browser("求高手指点,QTP11录制的时候无法识别文本编辑器").Page("求高手指点,QTP11录制的时候无法识别文本编辑器").Frame("Frame").WebElement("回复 1# caicai2012 123456").Object.innerText=str


运行结果:

可是有warning:


试试

str="<table><tr><td>数据1</td><td>数据2</td></tr></table>"
WebElement("回复 1# caicai2012 123456").Object.innerText=str

PS:我没用QTP做过项目,目前只在自学中 这个是百度出来的结果 然后小实践了一下

赵佳乐SMILE 发表于 2012-11-19 17:29:49

这个也要测 这不是第三方插件?

看书说 进入QTP→上方菜单栏→Tools→Web Event Recording Configuration 调整为High

你试试这个成不

xjwldlover 发表于 2012-11-19 17:31:22

录制完毕后在ActiveScreen里点击选中这个输入框,然后添加到对象库,应该就可以识别了。如果还不行,请将webElement的outerHtml属性发出来,大家研究下
网页地址发上来也行

caicai2012 发表于 2012-11-19 17:39:39

回复 2# 赵佳乐SMILE


    还是不行呀

风雪夜归人 发表于 2012-11-19 22:02:40

用vbscript sendkey之类的啊

joykao 发表于 2012-11-20 08:14:20

用spy去识别到底是个什么对象,最好指到输入框的里面部分。。。。。怎么感觉都像webedit。。。。

joykao 发表于 2012-11-20 08:54:28

回个帖还要验证。。。。。。

caicai2012 发表于 2012-11-20 09:37:35

本帖最后由 caicai2012 于 2012-11-20 09:58 编辑

回复 3# xjwldlover


    就是录制的时候录不上,直接添加对象后就成WebElement了,这是公司后台没法给链接呀,需连VPN的

caicai2012 发表于 2012-11-20 09:53:46

回复 3# xjwldlover


    outerhtml属性是<body class="ke-content" contentEditable="true">输入内容</body>

caicai2012 发表于 2012-11-20 09:56:54

回复 3# xjwldlover


    ActiveScreen没有东西,因为根本录不上

caicai2012 发表于 2012-11-20 09:58:04

回复 6# joykao


   是指到 输入框的,识别成webelement了

赵佳乐SMILE 发表于 2012-11-20 10:32:07

赠送 另外一个没实践的方法

http://www.zxbc.cn/html/20080320/32656.html
不过有说 但只是一个不得已的解决方法——因为这种方式是很脆弱的,焦点变动,甚至一个Windows消息提示都可能使脚本失败。

joykao 发表于 2012-11-20 10:57:10

回复 11# caicai2012

看到你说论坛里面回复栏也是webelement,为啥我的QTP 识别就是webedit?感觉还是你没找对对象。。。。。要不就是QTP问题?修复下吧

xjwldlover 发表于 2012-11-20 11:05:41

回复 14# joykao


    回复-高级模式

caicai2012 发表于 2012-11-20 11:16:22

回复 12# 赵佳乐SMILE


    我用你的方法试了一下能写进去了,太感谢了呀,你不是搞QTP的都知道啊,厉害

赵佳乐SMILE 发表于 2012-11-20 11:28:06

回复 16# caicai2012

不是不想搞 只是没机会 先给自己充充电 准备一下 明年可能换 也可能不换 现在的好处是不用加班

不忙还能学习

joykao 发表于 2012-11-20 13:00:11

回复 15# xjwldlover
高级模式上是识别成WebElement,试了下用DOM 输入不进去, 不过如果把源码那个checkbox选上还是可以识别成WebEdit。。。。

caicai2012 发表于 2012-11-20 15:11:32

回复 18# joykao


    把源码那个checkbox选上-----------是指哪里

joykao 发表于 2012-11-20 15:42:59

回复 19# caicai2012

这个是论坛上的回帖高级模式边上有个源码checkbox, 和你的程序应该没啥关系,前面有人给出的给object.innertext赋值这个可以实现你的需求
页: [1] 2
查看完整版本: 求高手指点,QTP11录制的时候无法识别文本编辑器