QTP中隐藏的Action最高指挥官——Action0

来源:互联网 发布:ubuntu sudo使用 编辑:程序博客网 时间:2024/04/29 19:01

        相信很多使用过QTP的同学都会有这么一个发现,在QTP脚本中只有一个Action,但是在浏览脚本目录的时候发现还多了一个叫Action0的目录,并且每个脚本都有这么一个Action0。那么,它究竟是用来干嘛的呢?

        其实,它是QTP脚本中隐藏的Action最高指挥官,负责组织和调度当前脚本中的各种Action。有的同学可能会问,如何看到Action0里面的内容呢?这个其实也非常简单,首先我们进入到Action0的目录下,然后用记事本方式打开Script.mts 这个文件就可以看到其中的内容了。

        下面我们将进一步地来证明Action0与其他Action之间的组织和调度的关系。

        首先,我们打开QTP,新建一个Test,并创建两个Action。在Action1中写下如下代码:

Msgbox "This is Action1"

        在Action2中写下如下代码:

Msgbox "This is Action2"

        然后运行Test,在运行过程中会弹出两个框,按照顺序分别是 。然后我们将Test保存,进入到Action0目录下,用记事本打开Script.mts 可以看到Action0中有如下的代码:

Call RunAction("Action1", oneIteration)Call RunAction("Action2", oneIteration)
        看到这段代码后,相信大家已经明白了,原来在Action0中分别调用了Action1和Action2。在这里我们可以将这段代码做一下修改,比如将两句话的位置换一换,让它先调用Action2,再调用Action1,修改完之后保存文件,用QTP重新打开Test文件(在这里需要注意一下,需要重新打开该Test文件才能生效)并运行,我们会发现两个Action的运行顺序不一样了!怎么样,是不是很神奇呢?

        再来,我们在Action0的脚本中,把Call RunAction("Action1", oneIteration)这句话删掉,让它只运行Action2。重新运行后发现,这次只弹出了一个, 也就是说Action1没有运行!

        通过以上的试验,已经充分说明了Action0确实是所有Action的最高指挥官!另外,在Action0中可以调用外部的可重用Action,也可以控制其他Action的迭代次数,读者可以自行尝试这些内容。



原创粉丝点击