51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

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

[原创] 新手请教!

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2006-12-14 02:51:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
当录制一段删除记录的脚本时,如何录制记录编号?
如果在执行时,此条记录已经不存在了怎么办?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2006-12-14 09:29:15 | 只看该作者
首先你得知道这个对象的哪个属性,描述了这个编号.再用GetROProperty("属性")来取这个编号.

如果执行时,这个记录已经不存在了,那么QTP就不找不到这条记录,会报错.
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2006-12-15 01:22:43 | 只看该作者
//登陆,输入用户名密码
Browser("Browser").Dialog("Connect to webdev").WinEdit("User name:").Set "username"
Browser("Browser").Dialog("Connect to webdev").WinEdit("User name:").Type  micTab
Browser("Browser").Dialog("Connect to webdev").WinEdit("Password:").SetSecure "wjeofo34kl43kjsd449bec6ebf3acd384d7f1d97493703e0a09bda"
Browser("Browser").Dialog("Connect to webdev").WinEdit("Password:").Type  micReturn

//点击页面上的连接
Browser("Browser").Page("Page").Link("I-1019").Click

//进行删除操作
Browser("Browser").Page("Page_2").WebList("status").Select "DELETED"
Browser("Browser").Page("Page_2").WebButton("Submit").Click
Browser("Browser").Dialog("Windows Internet Explorer").WinButton("OK").Click


这是我录制的一段脚本,就是先登陆,输入用户名密码,然后进入页面,进行删除记录操作(针对数据列表的第一条记录)。
每次连接的地址总是变的,无法固定

通常是采用什么方法来处理呢?从数据库中取值?写成变量?请指教,谢谢

[ 本帖最后由 joshfang 于 2006-12-15 01:48 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2006-12-16 01:08:26 | 只看该作者
自己顶一下,红颜色的位置是要从datatable中取吗?
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2006-12-16 02:15:52 | 只看该作者
我自己手动改了对象库以后,为什么在运行的时候总是报description dismatch的警告呢?还有什么地方需要改吗?
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2015-5-4 14:23
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    6#
    发表于 2006-12-16 11:17:48 | 只看该作者
    Browser("Browser").Page("Page").Link("I-1019").Click
    I-1019是录制时得到的么?还是登陆后就在页面上已经存在了?
    回复 支持 反对

    使用道具 举报

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

    连续签到: 1 天

    [LV.1]测试小兵

    7#
    发表于 2006-12-17 13:26:44 | 只看该作者
    根据楼主在 #3的描述,我的理解是 Link("I-1019") 这个对象的名字 I-1019总是变化的,因此你想寻找它的解决方法。 我想你首先要找到 这个  Link的地址 的变化规律,例如 它是从前面的某个对象的属性继承过来的;然后 再对它的属性用正则表达式来表示,或者是把它的地址放在datatable里面,然后到datatable去取值;或者是 自己写 脚本来实现你的要求。

    另外,对于你在#5说的出现description dismatch的警告,这不是什么大问题,只是因为根据对象库里面对象的属性, QTP没有在页面上找到与此完全匹配的对象,只能找到一个与此大体匹配的对象。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
    发表于 2006-12-18 16:56:41 | 只看该作者
    你这个参数化,不能轻易的到datatable或其他哪里取值.针对对象名的参数化,在我的blog里的<QTP参数化实例>讲到过,你可以看一下连接.如果你这个对象名有一定规律可以用正则表达式.或者用我文章里提到的方法,先把红色部分修改成描述性编程的形式.然后再来参数化,不然会报没有匹配对象的错.
    http://blog.51testing.com/?26649
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
     楼主| 发表于 2006-12-19 04:00:15 | 只看该作者
    感谢两位斑主的指点:)

    xiaonan 你的文章写的太好了!!

    [ 本帖最后由 joshfang 于 2006-12-19 04:09 编辑 ]
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
     楼主| 发表于 2006-12-19 05:53:30 | 只看该作者
    还有一个问题,link现在是可以用描述性语句来写,但为什么page不可以呢?
    每次page还是到对象库中去找对象。

    Dim i
    i=DataTable("exp0","Global")
    Dim e
    e="Edit Experiment ID#"&i


    Browser("Browser").Page("Experiments Listing").Link("text:="&i).Click
    Browser("Browser").Page("text:="&e).WebButton("Delete").Click
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
     楼主| 发表于 2006-12-21 02:03:28 | 只看该作者
    自己顶一下
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-9 02:38 , Processed in 0.075887 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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