51Testing软件测试论坛

标题: 新增了一条记录保存后要修改,怎么自动选到这条记录前面的单选框进行修改 [打印本页]

作者: lylymail1    时间: 2007-8-21 15:52
标题: 新增了一条记录保存后要修改,怎么自动选到这条记录前面的单选框进行修改
新增了一条记录保存后要修改,怎么自动选到这条记录前面的单选框进行修改
作者: gy21st    时间: 2007-8-21 17:16
说实话,lz象是自言自语.没有任何语境,看不懂.
作者: 风过无息    时间: 2007-8-21 17:58
楼主需要找到纪录的属性来区别.
假如没有的话,推荐可以用search功能找到(前提是有search的功能),以后进行修改.
作者: gzj_06    时间: 2007-8-21 21:35
新增的这条记录如果位置总是在第1条,那也不需要任何别的方法,直接录制脚本,就可以,我试过的,如果不是在第1条,那有点麻烦
作者: danmy    时间: 2007-8-22 09:30
他的意思是table前面的checkbox吧?? 汗,我的发散思维真的很强!
作者: marco    时间: 2007-8-22 09:33
如果是webtable的就很好办了,用getrowwithdata的方法取得所在行,在用childitem选中该单选框
作者: lylymail1    时间: 2007-8-22 09:57
标题: 回复 #6 marco 的帖子
是webtable,新增的并不总是在第一行,并且webtable中所列出的列并不能唯一确定记录,唯一确定记录的recordid字段并没有列在webtable中,我查了webtable并没有你说的getrowwithdata的方法啊,还是不知道怎么办

[ 本帖最后由 lylymail1 于 2007-8-22 10:01 编辑 ]
作者: yabest    时间: 2007-8-25 00:18
原帖由 lylymail1 于 2007-8-22 09:57 发表
是webtable,新增的并不总是在第一行,并且webtable中所列出的列并不能唯一确定记录,唯一确定记录的recordid字段并没有列在webtable中,我查了webtable并没有你说的getrowwithdata的方法啊,还是不知道怎么办


“唯一确定记录的recordid字段并没有列在webtable中”,那就没办法判断是哪一条记录了,所以没办法解决!
作者: walker1020    时间: 2007-8-25 14:56
原帖由 lylymail1 于 2007-8-22 09:57 发表
是webtable,新增的并不总是在第一行,并且webtable中所列出的列并不能唯一确定记录,唯一确定记录的recordid字段并没有列在webtable中,我查了webtable并没有你说的getrowwithdata的方法啊,还是不知道怎么办


先考虑一下如果是手工测试,你是如何判断新增了一条记录的,然后再把此 Solution  用QTP的脚本来实现就可以了。QTP只是一个工具,如果想更好地利用它做好你的工作,那需要你用自己的更多智慧来利用它来解决实际问题。
作者: walker1020    时间: 2007-8-25 14:56
原帖由 lylymail1 于 2007-8-21 15:52 发表
新增了一条记录保存后要修改,怎么自动选到这条记录前面的单选框进行修改


你的描述没有一点Context ,也没有一点对测试的系统的说明和图片,所以别人很难帮你!
作者: sstars    时间: 2007-8-26 22:09
1.同意版主的,手工测试时你是否要根据table中多列的值来确认唯一的一行?那么同样的道理,在脚本中你需要
  a.取得webtable中每一个cell的对象,遍历一行中的所有的属性值,看是否匹配
  b.如果匹配则可以定位到具体的行,再根据行号获得checkbox对象
  或者某个字段的属性具有唯一性,那就不要遍历所有属性值了,直接根据该属性定位到行>定位到checkbox
eg.
        For rowIndex = 1 to rowCount
                                isMatched = TRUE
                '根据指定列进行匹配
                For Each name in columnValue
                        expectedValue = ...
                        actualValue = ...
                        If StrComp(indeValue, actuValue) <> 0 Then
                                isMatched = FALSE
                                Exit For
                        End If
                Next
                '如果指定列已经匹配,跳出循环
                If isMatched Then
                        取得所在行
                        取得所在行中checkbox的对象并返回
                        Exit For
                End If
        Next
2.修改和新增时取的数据应该一致
3.或者checkbox的属性已经能够唯一定位行,那直接根据此属性识别出该checkbox对象

[ 本帖最后由 sstars 于 2007-8-26 22:15 编辑 ]
作者: bobile    时间: 2007-8-27 09:29
呵呵
作者: marco    时间: 2007-8-27 10:05
不要意思写错了,应该是GetRowWithCellText
不能唯一确定?那你手动的话是怎么确定你要修改的是哪个数据?




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