51Testing软件测试论坛

标题: 关于调用action的data table命名的问题。 [打印本页]

作者: topor    时间: 2007-10-22 22:13
标题: 关于调用action的data table命名的问题。
现在我用QTP录制脚本,大多数都是通过data table来驱动的,比如说把所有需要用到的数据都放在外部的excel里面,用的时候就import进来。但是现在我遇到一个问题,希望大家帮帮我解决一下:
  test     external data
test1       excel1
test2       excel2
最后在test3中调用test1,test2.因为我想把运行test3时需要用到的一些数据以及在运行过程中得到的一些中间数据存放
test3的global table里面,所以我在test1,test2的脚本里面都是用的是import sheet的方法。
现在出现的问题就是在test3里面的local table的名字都变成了excel1[test1],excel2[test2]。 所以在test3调用test1,test2的时候导致test1,test2的脚本不能将外部数据正确的导入到test3中的local table里, 因为在test1,test2的脚本里面都是直接import 到 excel1,excel2里面的。 由于两者excel命名方法不一致,所以脚本无法正常运行,希望各位大虾,大鱼们能帮帮忙,看有什么办法能解决这个问题,谢谢!
作者: tonyzhangjie    时间: 2007-10-23 10:46
Sheetname = DataTable.LocalSheet.Name
在test1和test2里加上这句话...
作者: topor    时间: 2007-10-23 11:50
请问楼上的,那个语句是在被调用的test中加还是在调用的test中加? 我两者都试过了,还是不行。 我是把这个语句写在脚本的最前面的,请问对语句的位置有没有要求?谢谢!
作者: topor    时间: 2007-10-23 11:54
我查看了一下帮助文件,对那句话的解释是:
Sheetname = DataTable.LocalSheet.Name
Description :Returns the name of the run-time data sheet.
好像跟我的那个问题有点不一样,这个语句只是返回一个sheet的name,而不是说重命名一个sheet的名字。
作者: tonyzhangjie    时间: 2007-10-23 12:07
这个语句是写在你被调用的action中,然后在被调用的action中所有的sheet名都用Sheetname这个变量替代掉就行了...之前也遇到过这样的问题,用这个方法解决了,你再试试
作者: topor    时间: 2007-11-1 15:25
不好意思,最近太忙了。楼上的解法是正确的,非常感谢!




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