51Testing软件测试论坛

标题: 通过QTP写好的脚本,可以放在外部运行吗? [打印本页]

作者: gaohui    时间: 2009-6-1 08:52
标题: 通过QTP写好的脚本,可以放在外部运行吗?
通过QTP做好的测试脚本,是否可以不打开QTP,直接通过脚本来运行测试Action?

    如果可以的话,需要通过什么样的方法呢?
作者: manhong    时间: 2009-6-1 09:07
不行,必须在qtp里运行。
作者: gaohui    时间: 2009-6-1 09:12
没有什么外部接口,或者命令行什么的调用它的脚本文件吗?
作者: manhong    时间: 2009-6-1 09:19
qtp录制的脚本必须用qtp回放。
qtp可以通过加载vbs,参数化导入excel,或导入xml文件等。
作者: fei.ge    时间: 2009-6-1 09:20
写过通过VBS自动启动QTP运行脚本的例子:http://bbs.51testing.com/thread-150291-1-3.html

(只是也启动了QTP程序)
作者: gaohui    时间: 2009-6-1 09:31
哦!好的,谢谢斑竹!
那就是说,目前还没有能通过脚本来直接运行测试的方法咯?
作者: xiaoyaoke    时间: 2009-6-1 09:42
标题: 回复 6# 的帖子
有。。。不过这些脚本就不是在QTP中写的了
作者: davy_chen    时间: 2009-6-1 10:12
为什么抓住QTP不放,如果是因为之前的脚本已经是QTP了,那么不妨再找一个工具去自动控制QTP去干活,就好像用QTP去操作其它程序一样。我推荐可以考虑autoit,不过要自己写脚本。
作者: gaohui    时间: 2009-6-1 10:13
对的,我就需要这样的脚本,因为测试脚本都已经写好了,想每日自动构造后,把所有的功能再用QTP的脚本自动测试一次。
如何通过外部的脚本来调用Action里面的脚本呢。最好执行的顺序还可以由外部脚本确定。
是不是写VBS可以实现呢?
作者: gaohui    时间: 2009-6-1 10:16
恩,不想再用其他的工具控制QTP了,那样的话,更加复杂。
只想通过脚本来控制qtp的脚本,希望能脱离qtp来执行。
因为我将每个action仅仅实现一个功能,所以,外部脚本需要控制多个action来实现一串测试动作。
不知道有无例子,给点思路。哈哈,谢谢!
作者: hk_ella    时间: 2009-6-1 10:22
标题: 回复 10# 的帖子
action概念本身是针对qtp而言的,所以目前来说没有什么方法可以脱离该工具来直接运行
可以将你实现功能的action均设置为可复用的action
然后再编写一个不可复用的主控action,在该action中控制多个功能action
这样可以达到你的预期
作者: gaohui    时间: 2009-6-1 10:23
哦,对了,我的脚本都是用描述性语言,没有直接使用录制的对象!
应该可以脱离QTP运行吧

我现在就是一个mainaction作为入口,初始化所有的参数值,其他的功能都作为reusable action
但是,这样做,还是需要打开qtp再去执行。并且,主action中,会有很多的if...else语句,每次,我只能执行一个分支。灵活性不够。

[ 本帖最后由 gaohui 于 2009-6-1 10:27 编辑 ]
作者: blizzardlyk    时间: 2009-6-1 13:33
你不运行QTP,如何去识别对象,如何去实现脚本的运行? 你的想法太天真了吧? 如果真能简单的实现,那QTP还有什么存在的价值?
作者: hk_ella    时间: 2009-6-1 13:47
标题: 回复 12# 的帖子
使用描述性编程只是说你的脚本可以脱离对象库来运行,而不是脱离QTP
另外你这种情况的话,建议你将action写成function,然后将同一业务的各function归为一个class
然后使用测试框架,根据测试数据执行相应class中的function,而在测试数据中将确定你要执行的流程和数据
这样会灵活很多
目前我就是这样做的
作者: love0523    时间: 2009-6-1 17:48
标题: !!!!!
使用描述性编程只是说你的脚本可以脱离对象库来运行,而不是脱离QTP
另外你这种情况的话,建议你将action写成function,然后将同一业务的各function归为一个class
然后使用测试框架,根据测试数据执行相应class中的function,而在测试数据中将确定你要执行的流程和数据
这样会灵活很多




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