51Testing软件测试论坛

标题: 请问大家是否碰过这样的情况--关于调用Action时遇到的问题 [打印本页]

作者: seachild    时间: 2006-10-9 17:04
标题: 请问大家是否碰过这样的情况--关于调用Action时遇到的问题
在调用action时遇到很奇怪的现象:

共有三个脚本:S1,S2,S3
其中S2 中有几个可重用的action, 其中一个叫RA1;
脚本S1里有几个可重用的action:其中两个一个为A1,A1调用了RA1,一个为A2,在A2中再次调用A1;
在脚本S3中调用S1的A2,结果发现当运行到调用A1那句时,并没有运行A1,而是运行了RA1;在测试报告中很明显看到RA1直接运行了,而并非由A1所调用的。



说明:1、脚本S1中只有一条语句,就是调用A2;
            2、脚本A1中有多条语句,调用RA1只是在中间的一条语句;
            3、脚本A2中有多条语句,而调用的action只有调用A1这唯一一条语句;
            3、当运行脚本S3时,从测试报告中看到根本没有运行A1,报告当中没有A1的名字和运行的语句,却有R
A1的名字和运行的语句。
            4、最奇怪的是,如果直接在脚本S1运行A2,则不存在该问题。
            5、无论把调用A1的语句放在A2的哪里,都存在该问题。

不知各位是否碰到这样奇怪的问题。。。

[ 本帖最后由 seachild 于 2006-10-10 09:24 编辑 ]
作者: walker1020    时间: 2006-10-12 21:35
这个问题的确是很奇怪。建议你把 这几个action 重新整合一下,也重新整理一下它们间的关系。个人感觉这几个action 间的关系很乱。看了半天都看不明白它们间到底是什么关系。
作者: seachild    时间: 2006-10-13 12:18
终于有人回答拉,谢谢版主呀。。。

我们现在是在做一个项目,用了project、test suite、test case、operation的框架来做的。
除了project这层实际对于一个batch run文件外,其余各层都是在物理上对应一个脚本,而一个operation当然是对应一个可重用的action,它有可能需要调用别的operation呀,就像写程序,一个function会调用一个function一样的。。。。框架结构是不可能改的,框架用了一段时间拉,也是头一次碰到这样的情况。。。。

哪位有所了解的或遇到过的,说说看呀。。。谢谢拉!!!
作者: bestmonty    时间: 2006-10-13 16:20
如果不好再调整关系,我建议用debug把有问题的一步步走走看。
不知道能不能找到问题所在。
作者: denisye    时间: 2006-10-13 20:15
我现在项目的脚本组织方式和楼主做的有点相似
我把楼主说的调用情况用QTP去实践了一下,在S1,S2,S3及里面的Action均只包含最简单语句(一个MSGBOX)的情况下,楼主说的问题我不能重现

我用的是QTP9.0,不知楼主的QTP版本是多少,是不是版本差异导致我们执行的结果不一样?
作者: seachild    时间: 2006-10-16 10:29
多谢楼上两位!!!
我用的QTP是9.0 ,出现这样的问题也是第一次碰到,或者这样说是在使用这个框架一段时间后首次碰到。使用同样的框架,其他的脚本并没有遇到这样的问题。
我多次尝试(包括重新建一个action),还是不能避免这个问题。。。。
不知道有没有谁碰到过类似情况呢?
谢谢拉!!!!
作者: walker1020    时间: 2006-10-16 13:40
标题: A1脚本到底运行了没有?
在 A1 这个action 的第一行代码上设置一个断点,然后运行脚本S3中,看看A1脚本到底运行了没有。不要只看测试结果的报告,还要看过程!

[ 本帖最后由 walker1020 于 2006-10-16 13:43 编辑 ]
作者: seachild    时间: 2006-10-19 09:41
当然不会以报告就作出这样的判断.你说的方法在调试的时候都试过拉,我还试过在action开头加弹出框之类的来判断它到底跑了哪些action...这真是一个奇怪的问题呀.....




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