51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 2545|回复: 6
打印 上一主题 下一主题

[原创] 在文本框中输入超出规定字数的内容后自动弹出弹出框,回放失败

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-11-27 11:37:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Browser("互动汽车_3互动汽车").Page("互动汽车_3互动汽车").Link("创建专辑").Click
Browser("互动汽车_3互动汽车").Page("互动汽车_3互动汽车").WebEdit("name").Set "12345678901"  '此输入框规定最多输入10个字,超出后自动弹出提示框“专辑名不能超过10个字”
Browser("互动汽车_3互动汽车").Dialog("来自网页的消息").WinButton("确定").Click
Browser("互动汽车_3互动汽车").Page("互动汽车_3互动汽车").WebEdit("connect").Set "防疫站通告"
Browser("互动汽车_3互动汽车").Page("互动汽车_3互动汽车").Link("驴行").Click
Browser("互动汽车_3互动汽车").Page("互动汽车_3互动汽车").Link("新手").Click
Browser("互动汽车_3互动汽车").Page("互动汽车_3互动汽车").Link("老款").Click
Browser("互动汽车_3互动汽车").Page("互动汽车_3互动汽车").WebButton("创建").Click
Browser("互动汽车_3互动汽车").Page("互动汽车_3互动汽车").Link("我的个人主页").Click
Browser("互动汽车_3互动汽车").Page("互动汽车-DRIVE FOR LIFE,爱汽车、爱生活、爱网").Link("我的专辑2").Click

但是回放时到了输入超出10个字时就是不弹框,也没有对超出字数的文字做自动删除动作,请问怎么解决?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    无聊
    昨天 09:03
  • 签到天数: 939 天

    连续签到: 1 天

    [LV.10]测试总司令

    2#
    发表于 2012-11-27 11:45:52 | 只看该作者
    帮顶下~~~
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
    发表于 2012-11-27 12:15:44 | 只看该作者
    这个问题涉及到了Set方法和手工填写的区别了。Set方法直接给文本赋值,而手工对一个文本赋值的方式是通过在文本中按键的方式来赋值的。你所说的“此输入框规定最多输入10个字,超出后自动弹出提示框专辑名不能超过10个字”,就是在做按键时判断文本长度,如果超过10,则提示,但Set不通过按键来赋值,所以就看不到提示了。

    你可以看源代码,文本框有OnKeyUp/Press/Down一类的事件,这就是当按键时在做判断。

    如果要将这个判断也在QTP中体现,就要在脚本中通过CreatObject("WScript.Shell").SendKeys的方法来发送按键,使得OnKey系列的函数能起作用。

    具体SendKeys如何使用,可以百度查询。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
     楼主| 发表于 2012-11-27 14:38:50 | 只看该作者
    回复 3# 泰然

    你好,我按照你的办法在脚本中添加了如下代码:
    CreateObject("WScript.Shell").SendKeys  "12345678901"
    运行时自动打开计算器和outlook,并没有在打开的web窗口中输入内容,请问是不是还缺少什么呢?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
     楼主| 发表于 2012-11-27 14:46:32 | 只看该作者
    回复 3# 泰然


        在web网页中没有聚焦点。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
     楼主| 发表于 2012-11-29 10:48:51 | 只看该作者
    回复 3# 泰然


        你好,已经使用你的方法实现了问题,但是现在又存在另外一个问题了,就是这个sendkeys方法不能写入汉字。不知如何实现?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2012-11-29 11:39:47 | 只看该作者
    Set Clipboard = CreateObject("Mercury.Clipboard")
    Clipboard.Clear '清空原有数据
    ClipBoard.SetText "王"  '对“王”做ctrl+C
    ClipBoard.GetText '做CTRL+V,这样就sendkey王这个汉字了,之前要先设置焦点
    ClipBoard.SetText "老"
    ClipBoard.GetText
    ClipBoard.SetText "五"
    ClipBoard.GetText  '这里一共做了3次sendkey,每次都发送一个汉字,都判断字符长度
    Set Clipboard=Nothing
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-4-29 01:35 , Processed in 0.071095 second(s), 25 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表