51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2994|回复: 10
打印 上一主题 下一主题

[求助] 问个复选框的问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-6-21 00:46:51 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
有一组复选框的名称为chk,我要使用描述性编程去选中第二个复选框,

我用....WebCheckBox("name:=chk","index:=1").set "on" 却找不到对象,为什么?

还有就是如何实现选中所有的复选框,我用WebCheckBox("name:=chk").set "on" 不行。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

11#
发表于 2007-9-19 11:38:44 | 只看该作者
楼主能不能把解决方法说的详细点呀!!谢谢!!我也遇到同样的问题了!
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2007-7-10 10:12:15 | 只看该作者
sdlkfj2 又学习一招!
回复 支持 反对

使用道具 举报

该用户从未签到

9#
 楼主| 发表于 2007-7-10 10:04:52 | 只看该作者
恩,已经解决了,直接用复选框的value属性来进行描述就可以了,如果复选框的value属性不唯一的话,就只有用我上面说的方法了.
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    8#
    发表于 2007-7-9 23:06:34 | 只看该作者
    楼主的问题解决了没有?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
     楼主| 发表于 2007-6-22 22:52:16 | 只看该作者
    回LS上的,是根据复选框后面的文字来选择的,但是WebCheckbox("name:=tester13")是不行的,因为整个复选框的名字都叫chk,而且tester13只是复选框后面的文字。现在我想了一个办法,就是使用双重循环去定位这个tester13所在的行号和列号,然后再根据这个位置的固定index来定位WebCheckbox
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
    发表于 2007-6-22 08:38:22 | 只看该作者
    先要找到可以唯一确定这个对象的条件。
    如果是手工测试,你会用什么样的条件去选择那个WebCheckbox?名字、位置还是控件的颜色?
    如果手工测试中选择那个对象的条件是有规律的,那么再用Spy去看看QTP能够利用哪个属性来判断就行了。

    如果Tester13这个复选框的名字是固定的,直接用Browser(***).Page(***).WebCheckbox("name:=tester13")就行。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
     楼主| 发表于 2007-6-22 00:14:42 | 只看该作者
    多谢LS的提醒,现在就只有一个问题了,我再发一下,由于我这里没有软件环境,没法截图上来看,只好先将就说明一下

    由于复选框的数据是变化的,我每次需要去选的那个复选框也是变化的,我怎么去判断呢?

    如下的格式,这是一个表格,复选框如下面排列的:

    --------------------------------------------------------------------------------
    |  □tester11   |  □tester12 |  □tester13 |.......               |
    --------------------------------------------------------------------------------
    |  □tester21   |  □tester22 |  □tester23 |.......               |
    -------------------------------------------------------------------------------

    上面的tester的个数是读的数据库,动态的,所以tester13的index属性也是不确定的,但我每次都要去选这个tester13的复选框,怎么实现呢?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
    发表于 2007-6-21 23:15:12 | 只看该作者
    把问题一个个想清楚,不同的问题可能解决方法不同。要选中所有的WebCheckbox用描述编程里面的Description对象方式解决比较好。

    1. Dim objDesc, objWCBs, i, iCount
    2. Set objDesc = Description.Create
    3. objDesc("micclass").Value = "WebCheckbox"
    4. Set objWCBs = Browser(***).Page(***).ChildObjects(objDesc)
    5. iCount = objWCBs.Count
    6. For i = 0 To iCount - 1
    7.     objWCBs(i).Set "ON"
    8. Next
    复制代码

    好像你提了几个问题,最好整理一下。不然看不出来你到底要解决什么问题了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
     楼主| 发表于 2007-6-21 22:46:17 | 只看该作者
    现在还是没解决这个问题,这个复选框的数据是动态生成的

    而且现在又遇到一个新的问题:由于复选框的数据是变化的,我每次需要去选的那个复选框也是变化的,我怎么去判断呢?

    如下的格式,这是一个表格,复选框如下面排列的:

    □tester11    □tester12    □tester13 .......
    □tester21    □tester22    □tester23 .......

    上面的tester的个数是读的数据库,动态的,所以tester13的index属性也是不确定的,但我每次都要去选这个tester3的复选框,怎么实现呢?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2#
    发表于 2007-6-21 07:48:31 | 只看该作者
    用SPY看一下到底index等于多少?
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-16 22:20 , Processed in 0.073109 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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