51Testing软件测试论坛

标题: 请高手指教如何写这个"checkbox"的代码 [打印本页]

作者: angelia_liu    时间: 2008-8-21 14:49
标题: 请高手指教如何写这个"checkbox"的代码
1. 如附件所示,我要拷两个图片到另外一个文件夹下面.

    操作步骤如下:

      a, 选择顶级菜单 "Images" 下面的子菜单 "July Carlandars".然后在页面下面会出现好多图片.
      b, 选择几个图片,点击"Copy". 按钮.

脚本代码是: Browser("Merchandising Tool").Page("Page_2").WebCheckBox("rowID").Set "ON"
                   Browser("Merchandising Tool").Page("Page_2").WebCheckBox("rowID_2").Set "ON"

rowID 和 rowID-2是选择了的两个checkbox.

当运行时,会出现错误提示信息"Cannot identify the object "rowID" (of class WebCheckBox). Verify that this object's properties mathch an object currently display in your application.".

请高手帮忙解答

谢谢.

[ 本帖最后由 angelia_liu 于 2008-8-27 15:46 编辑 ]
作者: zrg9399    时间: 2008-8-21 15:04
用getroproperty看一下,rowID是不是动态变化了,
作者: angelia_liu    时间: 2008-8-21 15:27
原帖由 zrg9399 于 2008-8-21 15:04 发表
用getroproperty看一下,rowID是不是动态变化了,


不好意思,我是新手,请问怎么用getroproperty看呀? 还有就是怎么知道他是不会动态变化了.
谢谢.
作者: dalinangel    时间: 2008-8-21 16:49
a = Browser("Merchandising Tool").Page("Page_2").WebCheckBox("rowID").getroproperty("rowID")
b = Browser("Merchandising Tool").Page("Page_2").WebCheckBox("rowID_2").getroproperty("rowID")

if strcomp(a,b) = 0 then
msgbox("ID是一样的")
else
msgbox("ID是不一样的")
end if
作者: angelia_liu    时间: 2008-8-21 17:16
原帖由 dalinangel 于 2008-8-21 16:49 发表
a = Browser("Merchandising Tool").Page("Page_2").WebCheckBox("rowID").getroproperty("rowID")
b = Browser("Merchandising Tool").Page("Page_2").WebCheckBox("rowID_2").getroproperty("rowID")

if strco ...


谢谢,
我试了一下,ID是一样的,那我接下来要怎么做才可以使ID不一样呢?
而且我觉得ID即使是一样的至少第一个可以执行吧?为什么两个都不可以呢?
作者: angelia_liu    时间: 2008-8-21 17:20
原帖由 dalinangel 于 2008-8-21 16:49 发表
a = Browser("Merchandising Tool").Page("Page_2").WebCheckBox("rowID").getroproperty("rowID")
b = Browser("Merchandising Tool").Page("Page_2").WebCheckBox("rowID_2").getroproperty("rowID")

if strco ...



谢谢,我已经用你的方法试了一下,发现ID是一样的,那么接下来我应该怎么做才可以使ID动态变化呢?
还有一个让我很不解的是为什么ID一样会导致这两个都不能识别呢?应该至少有一个可以吧?
作者: zte_boy    时间: 2008-8-21 18:45
用webtable去实现吧,动态获取,可能你的对象ID不唯一
ChildItem出来,然后在选择
作者: angelia_liu    时间: 2008-8-22 15:36
可不可以详细点呀,我是初学的,对这些不太懂.
谢谢各位了
作者: wtucel    时间: 2008-8-22 17:15
描述性编程就可以了:
Browser("Merchandising Tool").Page("Page_2").WebCheckBox("index:=1").Set "ON"
Browser("Merchandising Tool").Page("Page_2").WebCheckBox("index:=2").Set "ON"
作者: zrg9399    时间: 2008-8-22 17:34
标题: 回复 6# 的帖子
举个简单的例子,你想要在2个不认识的人找出一个,您所知道的信息他是男性,但2个人都是男性时,你就无法找出这个人,遇到这种情况只能再多了解这个人信息比如说“姓名”,你就可以找到这个人了
qtp也是一样,如果ID一样,可以再增加对象的一个属性,用于区别这2个对象
作者: 军临城下    时间: 2008-8-23 17:32
Set  chkbox =Description.Create()                             '描述动态产生的webcheckbox的属性
       chkbox("micclass").Value="WebCheckBox"
       chkbox("name").Value = "描述它属性的名字"  (你使用对象查看器看下就知道了)
       chkbox("html tag").value="INPUT"

Set newchkbox=  Browser("Merchandising Tool").Page("Page_2").ChildObjects(chkbox)

      boxnumbers =newchkbox.Count '计算动态产生的webcheckbox的个数

Randomize(Timer)
rndLoop = (int(rnd*boxnumbers))+1  '循环的随机数,即选择几个图片的功能,这里设置为最少选一个,最多全选
For i=1 to rndLoop                                    
  rndValue= (int(rnd*(boxnumbers-1)))+0  
  newchkbox(rndValue).Click            '点击webcheckbox的随机值,范围是从第1个到最后1个

Next
作者: lyscser    时间: 2008-8-24 22:17
LZ这问的让人吐血……
作者: angelia_liu    时间: 2008-8-27 14:36
原帖由 lyscser 于 2008-8-24 22:17 发表
LZ这问的让人吐血……




我知道我的问题对于测试高手来说很幼稚,但是你也不用这样打击人呀。难道不懂就不可以问吗?难道你一开始学的时候就很懂吗?




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