51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2630|回复: 9
打印 上一主题 下一主题

[原创] weblist 里如何select 一个正则表达式?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-4-27 09:18:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
代码如下

dim user
user="user1"

function  select(user)
.....................
browser().window().page().weblist().select LIST
.........................
end function

LIST 的ITEM如下:
user1(user1)
user2(user2)
user3(user3)
..........

我想使用正则表达式"^user1"来查询,如

browser().window().page().weblist().select ^user1

但是这样写报错

browser().window().page().weblist().select "^"&user1  
也不行

请指教一下,select后应该如何写,才能正确运行正则表达式?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-4-27 13:59:57 | 只看该作者
你想选 user1(user1)这个吗?,干吗要用正则表达式呢?直接给它不就行了
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-4-27 14:02:52 | 只看该作者
是不是有这样的可能,1。你选的东西你不能完全得到内容,2。你想要多选 ?给点信息呢,大家好帮你出出主意。呵呵
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-4-27 14:06:26 | 只看该作者
参数化+正则呢?
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2007-4-27 15:21:14 | 只看该作者
直接给它也可以,但是我觉得这样太麻烦了

我不想多选,只是想输入简单一些
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-4-27 17:45:58 | 只看该作者
有一种解决办法是这样的:
  1. dim user
  2. user="user1"

  3. '取出下拉框的所有内容。
  4. allItems=browser().window().page().weblist().getRoProperty("all items")
  5. '将下拉框的内容分隔成数组。
  6. tempArray=split(allItems,";")
  7. '在这些数组中找到包含"user1"的数据。
  8. firstElement = Filter(tempArray, user)
  9. '在下拉框中选择找到的第一个数据。
  10. browser().window().page().weblist().Select firstElement(0)
复制代码



不管怎么说,测试数据应该是受控的,测试中每一个输入或者校验的数据,应该都是根据某种规则挑选出来的,而不应该是随机的数据。
所以尽管程序上能够实现,但是不推荐使用这种方法。
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2007-4-27 21:19:21 | 只看该作者
不是的,大家把我的意思完全理解错误了。

源代码码如下:

dim user
user="user1"

function  select(user)
.....................
browser().window().page().weblist().select LIST
.........................
end function

'LIST 的内容如下
user1(user1)
user2(user2)
user3(user3)
..........

在调用这个function 时,我可以把我想选择的内容作为参数,
即 function "user1(user1)"   '把要选择的内容完整的作为实参输入

但是如果LIST里的内容非常长呢?那样调用函数岂不是很麻烦?
而观察这个LIST的内容可以发现都是以“user”+一个唯一的阿拉伯数字打头,所以我想用正则表达式“^user1”输入的话,就可以匹配我想选择的对象了。

但是我尝试了一下用正则表达式却总是抱错,我不知道怎么写才正确
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2007-4-28 14:56:51 | 只看该作者
不知道LZ是不是这个意思,可以不用正则
a = browser().window().page().weblist().getitem LIST序号
browser().window().page().weblist().select a
a就是LIST中的内容   如 user1(user1)
只要参数化LIST序号就行了
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2007-9-14 15:24:20 | 只看该作者
有人解决这个问题了吗?
就是在Select后面输入正则表达式,使其选择满足正则的内容
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2007-9-14 18:59:38 | 只看该作者

回复 #9 没有蛀牙 的帖子

在关键字视图中将browser().window().page().weblist().select "user1(user1)"中的user1(user1)参数化,然后就可以使用正则表达式了,至于具体使用什么样的正则表达式那要根据具体的场景咯~
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-16 01:43 , Processed in 0.091177 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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