51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2606|回复: 12
打印 上一主题 下一主题

[原创] 再次前来求助论坛的高手!希望大家能鼎力相助、谢谢!

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2010-3-18 23:55:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
现在想做一个WEB页面的测试
以下面的图为模板说说我想要达到的要求吧!

1、进入到这个页面以后,我要抓指定的标题名(怎么在检查点检查的内容不存在时,让测试报告中显示测试通过)中的(by 161958807)这个值出来。并输出。。。

2、问题:
   (1)、因为随着帖子的增加,标题(怎么在检查点检查的内容不存在时,让测试报告中显示测试通过)就会下沉到下面(先不考虑下沉到第二页),这个应该要怎么弄才能准确定位到这个标题名呢?
   (2)、随着回帖的人不断增多那么(by 161958807)这个值也会改变,这个又怎么弄才能准确定位到这个值并输出呢?

3、关于第二个个人觉得只要把问题1中的问题解决了应该就可以很轻松解决第二个问题了吧!

关于这个测试的脚本到现在都还没研究出来、麻烦高手出来指点一下吧!!比较急、关系到前途命运。。麻烦大家帮个忙吧!!谢谢了!!!

因为刚接触到QTP所以还是有很多不懂、请大家多多赐教。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2010-3-19 09:59:23 | 只看该作者
先把这个webtable对象取下来,然后调式下是这两列你需要的元素分别是在第几列
然后获取所有行数,进行遍历,遍历中并进行判断如果找到这个标题就获取对应行数的那列数据

具体方法可以F1 webtable
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2010-3-19 10:31:50 | 只看该作者

截了个图,楼主可以看看

我是用Firebug截图,楼主需要的信息基本可以从中找到

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
回复 支持 反对

使用道具 举报

  • TA的每日心情
    奋斗
    2014-12-18 10:31
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    4#
    发表于 2010-3-19 10:42:44 | 只看该作者

    因为数据为多页时,QTP只能一页一页判断,效率特别低,所以建议直接连数据库取数据

    以下代码实现了在所有页获取标题为: [求助] 再次前来求助论坛的高手!希望大家能鼎力相助、谢谢! 的最后回复人的名字和回复时间
    For j=1 to 10000
            rowcount=Browser("[QuickTest Pro] - 51Testing软件测").Page("[QuickTest Pro] - 51Testing软件测").webtable("name:=folder_common").RowCount

    For i=1 to rowcount
    text=Browser("[QuickTest Pro] - 51Testing软件测").Page("[QuickTest Pro] - 51Testing软件测").webtable("name:=folder_common").GetCellData(i,3)

    If text="  [求助] 再次前来求助论坛的高手!希望大家能鼎力相助、谢谢!  "  then               
                            print( Browser("[QuickTest Pro] - 51Testing软件测").Page("[QuickTest Pro] - 51Testing软件测").webtable("name:=folder_common").GetCellData(i,6))
    End If

    Next

    If  Browser("[QuickTest Pro] - 51Testing软件测").Page("[QuickTest Pro] - 51Testing软件测").Link("››").Exist Then
                    Browser("[QuickTest Pro] - 51Testing软件测").Page("[QuickTest Pro] - 51Testing软件测").Link("››").Click
                    else
                    Exit for
    End If

    Next

    [ 本帖最后由 feiyunkai 于 2010-3-19 14:14 编辑 ]
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2014-12-18 10:31
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    5#
    发表于 2010-3-19 10:55:33 | 只看该作者

    数据库中取数据

    假设数据库中存放标题的字段为:title,存放最后回复人的字段为:user_re则:

    set conn = CreateObject("ADODB.Connection")   '创建连接
    conn.C '设置连接字符串     
    conn.open '开启连接
    If conn.state = 0 Then   '如果连接状态为0,表示连接失败,否则表示连接成功
        Reporter.ReportEvent micFail,"测试连接","连接失败"
    else
       Reporter.ReportEvent micPass,"测试连接","连接成功"
    Set yuju=CreateObject("ADODB.Recordset")         '创建记录对象
    Do
    sql="select user_re from info where title='  [求助] 再次前来求助论坛的高手!希望大家能鼎力相助、谢谢!  '  
    yuju.open sql,Conn,1,3                                                                  
    print(yuju("user_re"))                                                         
    yuju.movenext  
    End If
    loop until yuju.eof=true '到达最后一条,停止循环
    next
    这样就可以显示所有名称为  [求助] 再次前来求助论坛的高手!希望大家能鼎力相助、谢谢!  的最后回复人和回复时间了
    如果想使用变量则把sql="select user_re from info where title='  [求助] 再次前来求助论坛的高手!希望大家能鼎力相助、谢谢!  '  
    修改为:
    title="  [求助] 再次前来求助论坛的高手!希望大家能鼎力相助、谢谢!  "
    sql="select user_re from info where title='"+title+"'

    [ 本帖最后由 feiyunkai 于 2010-3-19 11:00 编辑 ]
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2014-12-18 10:31
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    6#
    发表于 2010-3-19 11:01:47 | 只看该作者
    原帖由 feiyunkai 于 2010-3-19 10:55 发表
    假设数据库中存放标题的字段为:title,存放最后回复人的字段为:user_re则:

    set conn = CreateObject("ADODB.Connection")   '创建连接
    conn.C '设置连接字符串     
    conn.open '开启连接
    If conn.state =  ...

    conn.C '设置连接字符串   的代码没显示出来,完整代码见附件

    [ 本帖最后由 feiyunkai 于 2010-3-19 11:04 编辑 ]

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2010-3-19 13:13:35 | 只看该作者
    路过
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
     楼主| 发表于 2010-3-19 17:36:54 | 只看该作者
    真诚的感谢feiyunkai网友!!

    谢谢!!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
     楼主| 发表于 2010-3-20 00:15:46 | 只看该作者
    原帖由 feiyunkai 于 2010-3-19 10:42 发表
    以下代码实现了在所有页获取标题为: [求助] 再次前来求助论坛的高手!希望大家能鼎力相助、谢谢! 的最后回复人的名字和回复时间
    For j=1 to 10000
            rowcount=Browser("[QuickTest Pro] - 51Testing软件测 ...


    请问feiyunkai

    我在录制的时候出现这个错误、应该怎么解决?

    我现在是以51testing论坛的这个网页在测试。。。

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2010-3-20 11:18:57 | 只看该作者
      Good !  收下 ~ 那如果 要进行两次的 SQL 使用 如何 使用 ?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2014-12-18 10:31
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    11#
    发表于 2010-3-22 13:35:41 | 只看该作者
    原帖由 L.E.O 于 2010-3-20 00:15 发表


    请问feiyunkai

    我在录制的时候出现这个错误、应该怎么解决?

    我现在是以51testing论坛的这个网页在测试。。。


    因为你没有把对象添加到对象库,所以会报错,打开QTP,按CTRL+R,点击+号按钮,把对应的对象添加到对象库就可以了
    将求助中的任一贴子加到对象库,再将>>翻页控件添加到对象库就可以了

    另外一种方法是使用描述性编程,但是由于描述性编程原理是通过页面属性去查找对应的对象,所以页面元素特别多或页面结构比较复杂的时候,效率会特别低,所以本脚本中不建议使用描述性编程
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2014-12-18 10:31
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    12#
    发表于 2010-3-22 13:37:17 | 只看该作者
    原帖由 sean007 于 2010-3-20 11:18 发表
      Good !  收下 ~ 那如果 要进行两次的 SQL 使用 如何 使用 ?


    可以把上面的脚本封装成函数,将SQL语句等信息以参数形式传入,这样在用到SQL连接的时候直接调用该函数就可以了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    13#
     楼主| 发表于 2010-3-22 22:00:44 | 只看该作者
    我再试试看
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-16 14:45 , Processed in 0.076840 second(s), 25 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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