51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4124|回复: 20
打印 上一主题 下一主题

[原创] 请问可以为radio button 设置参数么?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-3-23 10:42:31 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
想使得每次循环依次点击3个不同的radio button 可是好象不能象list那样设置data table
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

21#
发表于 2008-3-11 17:21:55 | 只看该作者
看到楼上说的用index,觉得是个不错的方法,但是我试了很多次,还是不行。最终用object spy查看那个radiobutton时发现,index是RadioButtonGroup的属性,而对于单个Radiobutton不存在这种属性,所以
最终没有办法,只能用笨方法将radioButtonGroup所有item的value存在dataTable中,一个一个调用 了。
回复 支持 反对

使用道具 举报

该用户从未签到

20#
发表于 2008-3-10 14:33:11 | 只看该作者
18楼的脚本是执行一次循环,在循环中依次选择每个button,要实现19楼的需求也很容易,参数化下属性值即可,描述性编程比较直观,示例如下
Browser("Welcome: Mercury Tours").Page("Select a Flight: Mercury").WebRadioGroup("index:="&DataTable(1,1))
all_RadioCheck(i).Set "ON"
其中DataTable(1,1)存放的是你要指定选择第几个button,在DataTable中依次写入0,1,2就可以~
回复 支持 反对

使用道具 举报

该用户从未签到

19#
发表于 2008-3-10 12:05:24 | 只看该作者

回复 18# 的帖子

谢谢楼上耐心地指点。不过还是有个问题,不知道楼上的是不是误解了我的意思,我的意思是假设我的data table中有3 rows参数,那么我的脚本就可以执行三次,我想在这三次循环中都选择不同的radioButton,第一次选择第一个radiobutton,第二次选择第二个radiobutton……。
但是上面给出的脚本,它每次都是选择第一个radiobutton,就像我在13楼上所说的。
不知还是我其它地方出错了
回复 支持 反对

使用道具 举报

该用户从未签到

18#
发表于 2008-3-10 10:55:38 | 只看该作者
11楼+12楼不就已经给出答案了么。。。
以下脚本的功能是依次选择每一个RadioButton
Set d_RadioCheck=Description.Create()
         d_RadioCheck("micclass").Value="WebRadioGroup"
Set all_RadioCheck=Browser("Welcome: Mercury Tours").Page("Select a Flight: Mercury").ChildObjects(d_RadioCheck)
                 n=all_RadioCheck.Count()
                 For i=0 to n-1
                       all_RadioCheck(i).Set "ON"
                          
                 Next
回复 支持 反对

使用道具 举报

该用户从未签到

17#
发表于 2008-3-10 09:56:57 | 只看该作者

回复 16# 的帖子

我的需求就是在一个页面page1里有一个RadioGroup,包含三个Radiobutton,现在想每次循环时依次选择不同的RadioButton,具体的脚本应该怎么写呢?
回复 支持 反对

使用道具 举报

该用户从未签到

16#
发表于 2008-3-7 18:23:50 | 只看该作者
脚本当然是可以控制的了~~但是需要知道你的详细需求,以及被测页面的详细信息~
回复 支持 反对

使用道具 举报

该用户从未签到

15#
发表于 2008-3-7 17:18:15 | 只看该作者

回复 14# 的帖子

那样做的话应该可以,但是脚本应该是可以控制的。现在就是找不到一种合适的方法。
麻烦各位高手指点一下了~~~
回复 支持 反对

使用道具 举报

该用户从未签到

14#
发表于 2008-3-7 17:10:04 | 只看该作者
可以把radiobuttion的值.SPY出.用table来写出.读取吗?
回复 支持 反对

使用道具 举报

该用户从未签到

13#
发表于 2008-3-7 17:04:08 | 只看该作者

回复 12# 的帖子

以前试过,虽然不会出现Run Error,但是并不是想要的结果,它每次循环的时候都是选择第一个RadioButton。我觉得这段脚本是把所有的RadioButton都尝试set"ON"吧,并不是每一次循环时它会依次选择不同的RadioButton.。不知道是不是这样?
  如果是这样的话,那么如何才能让它每次循环时能依次选择那一组RadioButton呢??
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2008-3-7 16:51:39 | 只看该作者

回复 11# 的帖子

还是描述属性的问题。。。
如果你是要获得该页面下的所有WebRadioGroup的话,建议使用
d_RadioCheck("micclass").Value="WebRadioGroup"
来描述
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2008-3-7 15:57:09 | 只看该作者

回复 10# 的帖子

谢谢楼上的提醒,现在我把属性改了,最终脚本为:
Set d_RadioCheck=Description.Create()
         d_RadioCheck("name").Value="outFlight"
Set all_RadioCheck=Browser("Welcome: Mercury Tours").Page("Select a Flight: Mercury").ChildObjects(d_RadioCheck)
                 n=all_RadioCheck.Count()
                 For i=0 to n-1
                       all_RadioCheck(i).Set "ON"
                          
                 Next

现在出现了另一个问题,当运行到第二次循环,执行这段脚本时出现了Run Error,具体错误提示为:
Object doesn't support this property or method: 'all_RadioCheck(...).Set'
Line (19): "all_RadioCheck(i).Set "ON"".
这又是什么原因呢?麻烦继续指教~~~~
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2008-3-7 15:10:04 | 只看该作者
Browser("Welcome: Mercury Tours").Page("Select a Flight: Mercury").WebRadioGroup("outFlight").ChildObjects(d_RadioCheck)
这句应改为Browser("Welcome: Mercury Tours").Page("Select a Flight: Mercury").ChildObjects(d_RadioCheck)
另外描述的属性最好斟酌下,确保描述属性能够把想要找的对象筛选出来
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2008-3-7 14:34:46 | 只看该作者
原帖由 风过无息 于 2007-3-23 11:03 发表
可以用描述性编程,在论坛里搜索一下,有问题再提问吧。

比如:
Set m_WinCheck=Description.Create()
      m_WinCheck("nativeclass").Value="Button"
      set All_WinCheck=Window("").Dialog("").Childo ...


对于要求在每次循环里选择不同的Radiobutton,我按照你提供的方法,写了下面的脚本:
Set d_RadioCheck=Description.Create()
         d_RadioCheck("html tag").Value="INPUT"
  Set all_RadioCheck=Browser("Welcome: Mercury Tours").Page("Select a Flight: Mercury").WebRadioGroup("outFlight").ChildObjects(d_RadioCheck)
                 n=All_RadioCheck.Count()
                 For i=0 to n-1
                          All_RadioCheck(i).Set"ON"
                          
                 Next
运行发现一个问题,每次循环的时候它总是选择第一个Radiobutton。问一下楼上的这脚本应该不适用于RadioButton吧?
如果真的要求每次循环都选择不同的RadioButton,应该怎么改呢?可不可以利用一个全局变量来控制呢?? 等待ing~~~
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2007-3-23 14:02:41 | 只看该作者
一般不是固定值,用index属性好了
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2007-3-23 13:47:17 | 只看该作者
赫赫 解决了 请问window id这个属性的值是固定的么 对于同一个软件来说
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-3-23 13:35:01 | 只看该作者
。。。。。。WinRadioButton("window id="&n) n是变量
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2007-3-23 12:50:35 | 只看该作者

初学描述性编成 有问题 请指教

我想通过三个按钮的windows id的属性 识别 分别进行点击 比如三个按钮的windows id 分别为 1,2,3

程序描述中:。。。。。。WinRadioButton("window id=?")  使用常数是可以的 请问怎么使用变量呢?谢谢
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-3-23 11:17:11 | 只看该作者
在专家视图里面操作的
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2007-3-23 11:11:54 | 只看该作者
恩 好的 可是我还没有开始学习编程方面的东西 请问可以在keyview窗口中设置么? 谢谢
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-15 10:58 , Processed in 0.081749 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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