51Testing软件测试论坛

标题: weblist 里如何select 一个正则表达式? [打印本页]

作者: kursk    时间: 2007-4-27 09:18
标题: weblist 里如何select 一个正则表达式?
代码如下

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后应该如何写,才能正确运行正则表达式?
作者: xiaonan    时间: 2007-4-27 13:59
你想选 user1(user1)这个吗?,干吗要用正则表达式呢?直接给它不就行了
作者: claude    时间: 2007-4-27 14:02
是不是有这样的可能,1。你选的东西你不能完全得到内容,2。你想要多选 ?给点信息呢,大家好帮你出出主意。呵呵
作者: 风过无息    时间: 2007-4-27 14:06
参数化+正则呢?
作者: kursk    时间: 2007-4-27 15:21
直接给它也可以,但是我觉得这样太麻烦了

我不想多选,只是想输入简单一些
作者: mstiunicon    时间: 2007-4-27 17:45
有一种解决办法是这样的:
  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)
复制代码



不管怎么说,测试数据应该是受控的,测试中每一个输入或者校验的数据,应该都是根据某种规则挑选出来的,而不应该是随机的数据。
所以尽管程序上能够实现,但是不推荐使用这种方法。
作者: kursk    时间: 2007-4-27 21:19
不是的,大家把我的意思完全理解错误了。

源代码码如下:

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”输入的话,就可以匹配我想选择的对象了。

但是我尝试了一下用正则表达式却总是抱错,我不知道怎么写才正确
作者: skyzhu    时间: 2007-4-28 14:56
不知道LZ是不是这个意思,可以不用正则
a = browser().window().page().weblist().getitem LIST序号
browser().window().page().weblist().select a
a就是LIST中的内容   如 user1(user1)
只要参数化LIST序号就行了
作者: 没有蛀牙    时间: 2007-9-14 15:24
有人解决这个问题了吗?
就是在Select后面输入正则表达式,使其选择满足正则的内容
作者: 夜来烧    时间: 2007-9-14 18:59
标题: 回复 #9 没有蛀牙 的帖子
在关键字视图中将browser().window().page().weblist().select "user1(user1)"中的user1(user1)参数化,然后就可以使用正则表达式了,至于具体使用什么样的正则表达式那要根据具体的场景咯~




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2