51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4889|回复: 19
打印 上一主题 下一主题

[讨论] 关于qtp自动化模型的问题讨论

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-9-11 14:33:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
qtp提供了丰富的自动化接口函数,最近研究了一下,很多功能没有包含在自动化接口函数中,使得通过vb vc高级语言操作qtp有的功能无法实现比如
1 如何获取该工程action的名字
2 如何实现 insert exsting action这个动作
找了半天也没有找到相应的自动化接口,大家遇到过则行的问题吗
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-9-11 15:56:16 | 只看该作者
你从事自动化测试多少年了?
本人也在用QTP
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-9-11 16:24:28 | 只看该作者
原帖由 volvoo 于 2007-9-11 14:33 发表
qtp提供了丰富的自动化接口函数,最近研究了一下,很多功能没有包含在自动化接口函数中,使得通过vb vc高级语言操作qtp有的功能无法实现比如
1 如何获取该工程action的名字
2 如何实现  ...


你想干嘛呀,这么多动作你都要自动化,那要不要把QTP脚本开发也自动化啊?
一运行,QTP脚本就自动生成了,并自动运行,多好! 这边就不会那么多人问那么多问题了。

[ 本帖最后由 yabest 于 2007-9-11 16:25 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2007-9-11 16:34:38 | 只看该作者
你都会抢答了,恭喜你,我是要把 脚本生成自动化,不过不是全部,仅仅是最顶层的脚本自动生成
,比如果 一个ACTION 叫login,我通过vb控制,让普通测试人员不需要直接接触qtp,通过ui控制 ,循环100次调用,每次调用通过vb传入不同的参数,普通测试人员都没有掌握qtp,很悲惨,他们没有时间学习qtp,尽管我培训了n次了,连基本的vbs脚本还不会写,比如打印一个参数值msgbox parameter("aaa"),这都是某某邮电大学研究生阿
我正在编写一个界面,QTP基础脚本已经编写完毕,通过ui普通测试人员直接点击鼠标就可以进行测试了,出发点如此简单
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2007-9-11 16:41:24 | 只看该作者

最郁闷的问题

自动化接口getparameters返回的参数居然按照字母排序了
生成脚本的时候,我无法按照qtp参数定义的顺序输入参数,超级郁闷
怎么能够按照字母排序,多么低能的设计,对于第三方程序来说,如果要辅助qtp生成
vbs脚本,得到的参数却不是默认顺序,这样 runaction ** p1,p2,p3
输入实参就找不到坐标了,只能简单用qtApp.run rtParameters
不能生成vbs脚本了。
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-9-11 16:56:19 | 只看该作者
劝你别瞎费劲了,不掌握基本的QTP知识,就没办法使用自动化,更没办法开发自动化。
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2007-9-11 16:58:44 | 只看该作者
所有的Windows UI自动化核心都是Hook技术

我会写文章来尽可能全面阐述这一技术。
回复 支持 反对

使用道具 举报

该用户从未签到

8#
 楼主| 发表于 2007-9-11 17:19:16 | 只看该作者
没办法,我推广了快1年了,依然没有人使用qtp来进行测试,因为他们掌握不了vbs,多么可悲,希望我们的测试人员不要混到这个地步,上面我已经通过其他方法绕过去了,不是排序马,我的变量定义就按字母排序就ok,必须按照照这个思路推广阿,苦啊,面对广大名牌毕业硕士测试人员,多么无奈,我已经基本可以生成脚本了,第一个版本限制潜套三层循环生成qtp脚本,对方的测试经理居然问了一个问题说,以后是不是就不需要人编写qtp脚本了,无语了,我做的是把普通脚本串起来组成业务流,没有水,还流个屁。
继续努力
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2007-9-11 17:37:29 | 只看该作者
搞自动化一头热是没用的,你费再大劲,结果很可能还是白瞎忙!
回复 支持 反对

使用道具 举报

该用户从未签到

10#
 楼主| 发表于 2007-9-11 17:56:54 | 只看该作者
还好,是可能,而不是绝对,我做事就是这个风格,有可能就有成功的希望
回复 支持 反对

使用道具 举报

该用户从未签到

11#
 楼主| 发表于 2007-9-11 21:54:02 | 只看该作者
等我的框架程序出来,发个帖字晒晒
回复 支持 反对

使用道具 举报

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

    连续签到: 1 天

    [LV.1]测试小兵

    12#
    发表于 2007-9-11 22:03:36 | 只看该作者
    原帖由 volvoo 于 2007-9-11 14:33 发表
    qtp提供了丰富的自动化接口函数,最近研究了一下,很多功能没有包含在自动化接口函数中,使得通过vb vc高级语言操作qtp有的功能无法实现比如
    1 如何获取该工程action的名字
    2 如何实现  ...


    对于你说的第一个问题,你使用 Environment("ActionName") 试试。
    回复 支持 反对

    使用道具 举报

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

    连续签到: 1 天

    [LV.1]测试小兵

    13#
    发表于 2007-9-11 22:05:55 | 只看该作者
    对于你说的第二个问题,好像只能手工操作去实现 Insert Existing Action。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
     楼主| 发表于 2007-9-12 10:16:17 | 只看该作者
    Environment("ActionName")  返回action工程的名字,一个工程里面可能会有多个ACTION,目前没有找到合适的方法阿
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    15#
    发表于 2007-9-12 11:05:57 | 只看该作者
    原帖由 volvoo 于 2007-9-12 10:16 发表
    Environment("ActionName")  返回action工程的名字,一个工程里面可能会有多个ACTION,目前没有找到合适的方法阿


    哎,土了吧,不要钻牛角尖,QTP不提供这个接口,你可以自己找嘛!
    Test目录下有个.usr文件,里面就有Test的详细信息,可以轻易的得到所有Action的名字
    usr文件内容如下

    [General]
    Type=Tulip
    RunType=ActiveScript
    DefaultCfg=default.cfg
    ParamRightBrace=>
    ParamLeftBrace=<
    NewFunctionHeader=1
    MinorVersion=0
    MajorVersion=6       
    ParameterFile=default.prm
    DevelopTool=AQT

    [Actions]
    Action1=Action1\Script.mts
    Action2=Action2\Script.mts
    MyTestAction=Action3\Script.mts


    ...
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    16#
    发表于 2007-9-12 13:16:51 | 只看该作者
    楼上的意思估计是讲通过规则生成符合qt语法的文本,插入脚本中,完全通过fso对象可以实现,问题就是怎么生成,通过什么操作生成什么文本,然后还要解决对象的问题.volvoo兄8楼的问题我想,通知人事部比较好解决一点,这么搞是不是会增加你的测试成本?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    17#
     楼主| 发表于 2007-9-12 17:38:33 | 只看该作者
    不错,学习了,终于找到action,
    楼上伟哥子兄,找人事是最不可取的方法,等于把问题拿到桌面上谈了,结果只有一个:砸了,你多工作几年就理解了
    出来混饭吃,互相照应点吧

    [ 本帖最后由 walker1020 于 2007-9-12 23:43 编辑 ]
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    18#
    发表于 2007-9-14 09:34:19 | 只看该作者
    我还是觉得做技术就不用那么累了,那么劳烦着折腾自己,这种事情即使一时解决,以后的问题呢?做技术的还是神经大条一点比较好,需要用qtp那么就要学习vbs语言了,既然工作上有需求这就是个任务了,不学习应该是态度问题而不是能力问题了,volvoo兄一个人孤军奋斗在那么个环境的team下......技术不对可以靠培训学习来补,态度不对那就没办法了.我神经天生大条~说话也直,别见怪
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    19#
     楼主| 发表于 2007-9-14 17:33:45 | 只看该作者
    培训多次了,掌握不了,你能开除他们?况且自动化测试不是测试的全部,甚至仅仅占据了一点点地盘 ,大家开发的自动化测试覆盖率能到多少?对测试人员来说,业务的掌握远比着点自动化小玩意重要,我很欣赏您的坦率,但对你提到的解决的问题的方法不敢苟同,也许每个企业文化不同所致把
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    20#
    发表于 2008-2-1 10:36:35 | 只看该作者
    请问你找到insert existing action相关接口实现的api?我们在脚本调度时碰到与你同样的问题, 可否分享一下你的解决方案。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-6-14 02:10 , Processed in 0.084600 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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