关于RFT中顺序读取数据表

上一篇 / 下一篇  2008-05-14 16:47:04 / 个人分类:RFT

这两天一直在学习RFT工具,碰到的第一难题竟然是对数据表进行遍历。51Testing软件测试网Z8E6aKi
例如我有一张数据表,里面只有一个字段:usr_name,储存用户登录名。里面有十行记录。现在我要做的就是把这十行记录都输出,在实际的项目过程中,我们会要求输入这十个用户名。
A P&slU#g i8K0第一次实验时发现测试脚本运行完第一行后就结束了,而且我竟然没找到数据表读取设置的选项(刚学习,实在找不到)。由于不熟悉RFT的功能和语法,在花费了近三个小时充分研究了datapoolscrīptsupport和Idatapool及相关的方法后,终于将代码写出来了,代码如下:
P1ek'iQ0while(!dpDone()){
4_Au3s#Iq'E0      System.out.println(dpString("usr_name"));51Testing软件测试网$g8onH:ap"WQ:R5h
      this.dpNext();51Testing软件测试网{"^N#gD
}
[;|;_Pp ^x;Pw0写完后我就哭了,三个小时四行代码!51Testing软件测试网4Lrmru I;wn@
不过这个跟头栽的不冤,通过研究这个问题,我弄明白了以下几个问题:51Testing软件测试网OseL;_
1、RFT软件中一个脚本只能关联一个测试数据表,虽然可以通过自自己定义JAVA接口实现对多个数据表的读取,但是那不是RFT软件的功能;
Y7}2i4u7b02、正因为RFT中一个脚本只关联一个测试数据表,所以在脚本中我们可以直接使用DatapoolscrīptSupport对象的dpString()方法来获取参数值。其实我很想知道这个dpString()方法是怎么实现的,为什么我不用创建DatapoolScripsuppor对象的实例就可以直接调用该方法?,但是翻遍了API文档也没找到,只好暂时作罢。51Testing软件测试网"B0G&\!{G cp
3、如果仅仅是读取与脚本关联的测试数据表,我们用不到datapoolscrīptsupport和Idatapool这两个类。51Testing软件测试网B(k2N+C%h"X{,\r
4、RFT对数据驱动的理解与QTP不同,这点从数据表就能看出来,QTP中每一个脚本都有两种数据表,分别是全局表和本地表,并且在一个脚本中我们可以增加无限个本地表,也就是说,QTP脚本与测试数据表是一对多的关系;但是RFT中,脚本与测试数据表就是一对多的关系,也就是说一个数据池可以被多个脚本所共享。这点差别会导致自动化测试设计的差异。具体会有哪些差异我一时也举不出例子来。
u'Gj {f05、通过三个小时的反复折腾,我对RFT的API文档结构更加熟悉了。在以后的脚本开发过程中,这将大大提高我的开发效率。
d,U*xoZc_06、RFT中脚本与数据表多对一的关系会使设计和开发过程更简单。
u&T2G5F(N P'h)f!u0

TAG: RFT 读取数据表

小马菜菜的个人空间 引用 删除 dreamever   /   2008-06-17 07:57:20
呵呵,我写错了,RFT脚本和数据池之间应该是多对一个关系,即多个测试脚本可以共享一个数据池。文章已经改了。
wwyfriend的个人空间 引用 删除 wwyfriend   /   2008-06-12 20:11:57
脚本与数据表一对一的关系
请问您这里面所说的 数据表 是否就是 RFT里面的 数据池?
三个小时4行代码,佩服您的刻苦。
QQ 82807231 请联系我 多谢。
 

评分:0

我来说两句

Open Toolbar