51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3298|回复: 11
打印 上一主题 下一主题

[原创] QTP中输入框中值类型的判断

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2006-2-24 10:19:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在WEB界面中输入的值是数字的,但用TypeName(Browser("XX信息系统").Page("XX信息系统").Frame("Frame_6").WebEdit("AttendeeNumberField").object.value)取出来的类型是文本的,现在我如何判断输入框里的值是文本的还是数字的呢?如果是用cint(Browser("XX信息系统").Page("XX信息系统").Frame("Frame_6").WebEdit("AttendeeNumberField").object.value)判断的话,如果值是“一二”的话,就会报错,但如果值是“1235.21”,程序就可通过不报错。如何解决这样的问题呢?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2006-2-24 10:37:34 | 只看该作者
先用Output把框里值取出来,放到变量里,比如放到a里,然后用isNumeric(a),返回True和False,配合if语句就行了

[ 本帖最后由 Horus_Ra 于 2006-2-24 10:38 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2006-2-24 11:02:56 | 只看该作者
不行的,用isNumeric(a),返回是False,它认为都是字符串
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2006-2-24 11:05:37 | 只看该作者
用正则表达式判断来解决。
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2006-2-24 11:12:09 | 只看该作者
请问如何写呢?不好意思,没用过正则表达式!
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2006-2-24 11:51:32 | 只看该作者
不可能的,除非你那个东西本身就是字符串……
你可以试一下:
msgbox isNumeric("123")
msgbox isNumeric("abc")

上面报True,下面报False
没问题……

你要用正则表达式也行,比如
12ab34,你可以输入12.*.34,这样就会忽略掉中间的ab
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2006-2-24 13:17:04 | 只看该作者
对啊,刚才说了输入框中取出来的值是文本型的啊
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2006-2-24 13:27:54 | 只看该作者
也不对啊,如果是123的话,取出来怎么会是字符串?
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2006-2-24 13:42:10 | 只看该作者
开发人员在开发的时候就已经规定这个文本框中的数据就是STRING类型的。
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2006-2-24 13:54:47 | 只看该作者
那这样怎么判断呢?只能一个个字符往后读,然后判断是否是1~0里的数字??
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2006-7-20 11:01:43 | 只看该作者
Horus_Ra 说的对:)
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2006-7-20 13:27:27 | 只看该作者
正则表达式'^[0-9] $'试试看
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-26 06:00 , Processed in 0.073242 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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