51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

楼主: yujie6832
打印 上一主题 下一主题

[讨论] 2012年给力新作《精通QTP——自动化测试技术领航》试读以及答疑专用贴

[复制链接]

该用户从未签到

361#
发表于 2012-8-23 14:39:36 | 只看该作者
回复 356# zzxxbb112
多谢回复

我现在有一个问题很是不解,请教一下。

一、有三个文件:1.QTP; 2.vbs; 3.RegisterFun。
二、公共函数Login写在vbs文件中,在QTP中调用;根据作者的书中的方法,为对象注册了写日志的方法。
三、增加场景恢复。

一触发场景就报错,注册方法的错误,但是把Login方法直接写在QTP中,场景恢复就可用。注册方法跟场景恢复有冲突吗?这是怎么回事呢?请不吝赐教。
回复 支持 反对

使用道具 举报

该用户从未签到

362#
发表于 2012-8-23 15:11:17 | 只看该作者
回复 365# yujie6832


多谢老师的讲解。的确是,师傅领进门,修行看个人!我也要买一本!再次谢谢老师奉献出这么好的书!
回复 支持 反对

使用道具 举报

该用户从未签到

363#
发表于 2012-8-23 18:31:29 | 只看该作者
qtp 如何模拟鼠标 滚轮 例如 向上滚 向下滚
回复 支持 反对

使用道具 举报

该用户从未签到

364#
 楼主| 发表于 2012-8-24 10:09:35 | 只看该作者
本帖最后由 yujie6832 于 2012-9-7 09:03 编辑

回复 368# zz45509


    似乎无法模拟鼠标滚轮操作,但是可以按鼠标中键,滚轮操作的话你可以用上下键代替,都是通用的

如果你一定要模拟的话,要调用外部的API,给你段示例代码,公司正好用到,我不改了,原封不动贴上来

MouseWheelRotation 50

Public Function MouseWheelRotation(iClicks)
dim iLoop
dim bPos
WpfWindow("CMIPTestClient").WpfImage("XImageMainDsp3").Click 1,1 '======= The Object on which Mouse wheel operation is to be perform.===========
Wait(2)
MouseWheelRotation=False
Extern.Declare micVoid, "mouse_event", "user32.dll", "mouse_event", micLong, micLong, micLong, micLong, micLong
Const MOUSEEVENTF_WHEEL = 2048 '@const long | MOUSEEVENTF_WHEEL | middle button up
Const POSWHEEL_DELTA = 120 '@const long | POSWHEEL_DELTA | movement of 1 mousewheel click Down<nl>
Const NEGWHEEL_DELTA = -120 '@const long | NEGWHEEL_DELTA | movement of 1 mousewheel click Up<nl>

If  iClicks<>0Then   
    For iLoop = 1 to abs(iClicks)
        If  iClicks > 0 then
            '========To Scroll Down=============
            Extern.mouse_event MOUSEEVENTF_WHEEL,0,0,POSWHEEL_DELTA,1
            ' "Performed Mouse Wheel Down Operation  Successfully "
            MouseWheelRotation=True
        else
            '===========To Scroll UP===============
            Extern.mouse_event MOUSEEVENTF_WHEEL,0,0,NEGWHEEL_DELTA,1
            ' "Performed Mouse Wheel UP Operation  Successfully "
            MouseWheelRotation=True
        end if
    next
else
    ' "Fail :Fail To Perform [Mouse Wheel UP/Down]  Operation"
End If
End Function
回复 支持 反对

使用道具 举报

该用户从未签到

365#
发表于 2012-8-24 15:06:22 | 只看该作者
qtp里怎么写验证点啊?
在qtp的专家视图里怎么写验证点啊,不是在关键字视图里哦。
比如,Systemutil.run "C:\Program Files\Internet Explorer\iexplore.exe","http://www.baidud.com"
下边要对百度首页中出现的“@2012”进行验证,应该怎么写呢?
回复 支持 反对

使用道具 举报

该用户从未签到

366#
 楼主| 发表于 2012-8-27 16:56:54 | 只看该作者
回复 370# zjslovetyan

书里有验证点的章节
回复 支持 反对

使用道具 举报

该用户从未签到

367#
发表于 2012-8-27 17:17:55 | 只看该作者
本帖最后由 malasyan 于 2012-8-27 17:30 编辑

麻烦问一下,SetTOProperty的用法中,书里前面说 这个方法后面的参数是不需要加括号的,因为它没有返回值.但是后面跟的例子,Check按钮的自动化任务,以及多个按钮一一按过去的例子中,SetTOProperty方法后面都跟了圆括号,请问这是什么原因?看得我好迷糊...
另外我用Object Spy 看了一下按钮的Operations,里面是这样写的 SetTOProperty ([in] Property, [in] Value),也加了括号.
然后我就更晕了.
回复 支持 反对

使用道具 举报

该用户从未签到

368#
发表于 2012-8-28 15:45:10 | 只看该作者
阅读中。。。。。
回复 支持 反对

使用道具 举报

该用户从未签到

369#
 楼主| 发表于 2012-8-28 17:21:47 | 只看该作者
回复 372# malasyan


    后面那个我先回答你,OPERATION里所有的东西都加括号的,说明里面有几个参数可以设置,这只是种形式,不用深究  


前面的问题是VB的语法,有返回值加括号,没返回值不加,前面的问题在书的第几页?
回复 支持 反对

使用道具 举报

该用户从未签到

370#
发表于 2012-8-31 17:29:07 | 只看该作者
回复 374# yujie6832

前面的问题在书的120-121页.意思是这个例子是没有返回值的,所以不需要加括号.122页的两个例子都有返回值,所以需要加括号?
回复 支持 反对

使用道具 举报

该用户从未签到

371#
 楼主| 发表于 2012-9-3 09:58:46 | 只看该作者
本帖最后由 yujie6832 于 2012-9-3 09:59 编辑

回复 375# malasyan


    非常抱歉,给你造成困扰了,那段JAVA插件的关于脚本的案例是我直接摘抄网络资源,作为一个特例做分析的,我自己都没发现,SETTO是没有括号的,这段代码有问题,我没检查出来,疏忽了


PS:SetToProperty就是没有括号的!感谢帮忙发现书中的小缺陷,我们记录下来了,将在下个版本修复
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2015-12-22 14:29
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    372#
    发表于 2012-9-4 10:24:45 | 只看该作者
    回复  liujintao00


        是因为类型不匹配的原因,可以把ActualValue强转成字符串就好了,因为max len ...
    zzxxbb112 发表于 2012-8-14 12:15


    使用cstr确实不报错了,但是检查结果有问题,当预期结果和实际结果相同时,会判定为失败,要怎么解决
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    373#
    发表于 2012-9-4 13:08:45 | 只看该作者
    使用cstr确实不报错了,但是检查结果有问题,当预期结果和实际结果相同时,会判定为失败,要怎么解决
    liujintao00 发表于 2012-9-4 10:24


    预期结果和实际结果相同不会报错啊,肯定是有不同才会报错,一种情况就是类型不一样,既然已经转成字符串类型,那么你即使传入数字也必须要加上引号作为字符串形式进行比较。第二种情况看看比较的字符串左右是否含有空格,再试试,这类问题debug一下就好了。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-12-22 14:29
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    374#
    发表于 2012-9-4 13:42:59 | 只看该作者
    本帖最后由 liujintao00 于 2012-9-4 13:52 编辑
    预期结果和实际结果相同不会报错啊,肯定是有不同才会报错,一种情况就是类型不一样,既然已经转成字符 ...
    zzxxbb112 发表于 2012-9-4 13:08


    应该是第一种情况,
    "那么你即使传入数字也必须要加上引号作为字符串形式进行比较",这就话具体在哪部分做,怎么实现
    我是直接调用书中的例子的两个函数( HReport 的ActualValue改成cstr(ActualValue)),
    ValidateProperty Frame_AddUser.WebEdit("用户姓名"),"max length","20" 目前的执行结果如下,这个要怎么修改

    本帖子中包含更多资源

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

    x
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-12-22 14:29
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    375#
    发表于 2012-9-4 14:18:41 | 只看该作者
    应该是第一种情况,
    "那么你即使传入数字也必须要加上引号作为字符串形式进行比较",这就话具体在哪部分 ...
    liujintao00 发表于 2012-9-4 13:42



        搞定了,我改成这样就正常了
    userlen = 20
    ValidateProperty Frame_AddUser.WebEdit("用户姓名"),"max length",userlen
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    376#
    发表于 2012-9-10 18:42:22 | 只看该作者
    指定Result Location

    Set ResultsOption = CreateObject("QuickTest.RunResultsOptions")
    ResultsOption.ResultsLocation = "d:\我的文档\桌面\Keyword Driven\Bin\Result"

    运行后无效,很是蛋疼  忘老师指点。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    377#
    发表于 2012-9-10 18:44:14 | 只看该作者
    回复 369# yujie6832 万分感谢,等会儿试试。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    378#
    发表于 2012-9-11 09:55:16 | 只看该作者
    我现在有一个问题很是不解,请教一下。

    一、有三个文件:1.QTP; 2.vbs; 3.RegisterFun。
    二、公共函数Login写在vbs文件中,在QTP中调用;根据作者的书中的方法,为对象注册了写日志的方法。
    三、增加场景恢复。

    一触发场景就报错,注册方法的错误,但是把Login方法直接写在QTP中,场景恢复就可用。注册方法跟场景恢复有冲突吗?这是怎么回事呢?请不吝赐教。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    379#
    发表于 2012-9-12 10:18:11 | 只看该作者
    打开Avaliable Keywords,Function libraries中的函数怎么不能拖拽到专家视图中?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    380#
     楼主| 发表于 2012-9-12 14:58:53 | 只看该作者
    回复 384# zz45509


        怎么可能。。。修复下QTP
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-9-25 10:55 , Processed in 0.086003 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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