google搜索 站内搜索                 软件测试门户 | 软件测试培训 | 文章资料精选 | 软件测试论坛 | 测试解决方案 | 软件测试博客 | 测试招聘求职 
打印

qtp的记录之action篇

qtp的记录之action篇


GLOBAL  SHEET:可在任何action中调用它。(相当于全局变量)
CURRENT  ACTION  SHEET(LOCAL):只提供对于本ACTION的调用
如果你用了一个共享的对象库那么你就不能选择LOCAL来存储存一个对象数据表参数。
ACTION  TOOLBAR真到插入ACTION才会出现。VIEW>TOOLS>ACTION
DELETE一个插入的可重复ACTION如果DELETE第一项:只是删除此ACTION的调用语句。此ACTION还存在语句。
第二项:把此ACTION从TEST中完全删除。
如果在一个从外面调用来的ACTION插入新的ACTION那么是直接插入它的后面而不能插入其中,因为它是只读的。

Action传递参数的三个方法
1:利用Action Parameters功能。
2:把变量放入data table
3:   自定义环境变量(Test>Settings>Environment)
ACTION的三种类型
1:非重用型:只能在被存储它的TEST中调用而且只能被调用一次。
2:重用型:可以被多次在被存储它的TEST或别的TEST中调用,
3:外部型:一个存储在别的TEST中的可重用型,只能在调用它的TEST中只读。但它的DATA  TABLE可以用以LOCAL和可以编辑它的副本。右键ACTION  PROPERTIES>EXTERNAL  ACTION>USE  A  LOCAL,EDITABLE  COPY。
调用重用型的ACTION可以在以后新版本中控件发生变化时只升级被调用的可重复型ACTION所在的源程序即可。

Analog和low-level录制的区别
Analong是记住鼠标和键盘的操作,记录在一个单独的文件中。
e.g.Desktop.RunAnalog "Track1"
low-level是对于QTP不能识别的对象利用它们的坐标进行录制。如果日后对象位置有变动则很可能会操作失败。
e.g.
Window("Program Manager").WinObject("FolderView").Drag 83,149
Window("Program Manager").WinObject("FolderView").Drop 215,285
QTP拆分操作
下列情况不有拆分:
1:选定外部操作时
2:选定操作的第一个步骤时
3:录制测试时
4:运行测试时
5:使用只读测试时
Runaction中的oneIteration如遇被调用Action datatable行数小于当前Action的Global datatable的行数时

oneIteration每次只读取被调用Action datatable中的一行,如果当前Action的Globaltalbe>被调用Action datatable的行数,则剩余几行用被调用Action datatable的最后一行循环。
例如:
当前Action有5行。
被调用Action有3行:aa,bb,cc
那么最后两次调用:cc,cc.
test parameter 的使用问题
test parameter 的使用问题
一个qtp test可以有很多的action组成,现在Test Settings的Parameters页中设置了一个Input parameter,名为"TCPath",字符型,
如何在某一个action中调用该变量,用Parameter("TCPath")好象不行,应该如何书写语句,谢谢!  

在一个action中调用另一个action中的变量时.先在另一个action中设置个output参数,用变量传出来,才能在这个action用input参数把变量传进去.才能用Parameter("TCPath").你的写法并没有什么问题.是你设置的parameter参数不对.到step--action pro...那里去设output参数  

我是想通过外部程序调用该test的,在调用的的过程中送入一个参数,所以在Test Settings的Parameters页中设置了一个Input parameter,名为"TCPath",调用程序如下:
    Set qtApp1 = CreateObject("QuickTest.Application")
    Set qtResultsOpt = CreateObject("QuickTest.RunResultsOptions")
    qtResultsOpt.ResultsLocation = targetQTPscriptPath & "\Res1"
    Set pDefColl = qtApp1.Test.ParameterDefinitions
    'Retrieve the Parameters collection defined for the test.
    Set rtParams = pDefColl.GetParameters()
   
    'Retrieve a specific parameter.
    Set rtParam = rtParams.Item("TCPath")
    strTCPath="c:\qtp\test1.xls"
    rtParam.Value = strTCPath
    Set qtTest = qtApp1.Test
    qtTest.Run qtResultsOpt, True, rtParams
如何在action中调用该输入参数?  

RunAction "login", oneIteration,"mercury","mercury"
可以通过类似这样的写法,把参数传到一个action中去,当然要在step--action pro...那里去设input参数 .

TOP

谢谢楼主!总结的非常全面!
实践是检验真理的唯一标准。

TOP

曲高和寡哦

TOP

暂时不懂,顶一个先

TOP

太好了!谢了!

TOP

学习中

TOP

不错 收藏!
实践是检验真理的唯一标准。

TOP

sdlkfj2 sdlkfj2

TOP

顶一个

TOP

这个怎么和我在“梦醒时分”的QTP的170个问题中看到的是一样的?

TOP

比较实用哦

TOP

很不错的文章哦!

TOP

楼主辛苦,总结的很好,多谢啦.

TOP

看不懂哦

TOP

学习!sdlkfj2

TOP

 
当前时区 GMT+8, 现在时间是 2008-11-24 02:38Copyright(C)上海博为峰软件技术有限公司 2001-2007 电话:021-64471599-8017
当您在访问网站、论坛及博客过程中遇到问题时可发送email:webmaster@51testing.com或发送论坛短信至管理员风在吹