tthhbbandy 发表于 2008-7-16 17:25:54

RFT中DataPool的使用

开个新帖吧~
好多人都说RFT的数据池不好用,只能关联一个数据池
其实RFT有自己的方法去连接外部的数据池的 ,而且很方便。只要你管理好 你自己需要的数据池就可以了,其他的 都可以去手动 连接,不用在脚本中进行关联。

示例:

   //调用loginInfo数据池
   ConnDP connDP = new ConnDP();
   IDatapoolIterator logininfo = connDP.connLoginInfo();
ConnDP:
/**
   * 连接LoginInfo数据池
   * @return
   */
    public IDatapoolIterator connLoginInfo() {
      String dpPath="\\com\\test\\LoginInfo.rftdp";
      IDatapoolIterator dp=connDP(dpPath);
      return dp;
}
/**
   * 连接XXX数据池
   * @return
   */
    public IDatapoolIterator connXXX() {
      String dpPath="\\com\\test\\XXX.rftdp";
      IDatapoolIterator dp=connDP(dpPath);
      return dp;
}
/**
   * 根据数据池路径连接数据池
   * @return
   */
        public IDatapoolIterator connDP(String dpPath) {
                //获取工程相对路径
                String ProjectPath=getCurrentProject().getLocation().toString();
                DatapoolScriptSupport dpss = new DatapoolScriptSupport();
                org.eclipse.hyades.execution.runtime.datapool.IDatapool dp;
                java.io.File dpfile = new java.io.File(ProjectPath+dpPath);
                dp = dpss.dpFactory().load(dpfile, true);
                IDatapoolIterator dpitr = dpss.dpFactory().open(dp, "");
                dpitr.dpInitialize(dp);
                return dpitr;
        }

[ 本帖最后由 tthhbbandy 于 2008-7-16 17:29 编辑 ]

dreamever 发表于 2008-7-16 23:00:01

不错,学习了.

ezabella 发表于 2009-8-6 17:45:48

非常感谢!受益匪浅

String ProjectPath=getCurrentProject().getLocation().toString();
java.io.File dpfile = new java.io.File(ProjectPath+"//aa.rftdp");
DatapoolScriptSupport dpss = new DatapoolScriptSupport();
IDatapool dp = dpss.dpFactory().load(dpfile, true);
IDatapoolIterator dpitr = dpss.dpFactory().open(dp, "");             
dpitr.dpInitialize(dp);
while(!dpitr.dpDone())
{
setDatapool("rowNumber","10");
storeDatapool();//----如何往脚本里指定的aa数据池里更新数据阿?
dpitr.dpNext();
}
上面这个脚本会把脚本关联的数据池bb更新了,而不更新aa,不知道大侠在关联多个脚本的时候如何实现运行时更新数据池阿?还请不吝赐教!

[ 本帖最后由 ezabella 于 2009-8-7 11:31 编辑 ]

lnn693 发表于 2009-9-18 19:04:37

非常好用。谢谢楼主

tonybuct 发表于 2010-3-26 15:25:27

以上方法确实能解决在脚本中读入多个数据池的功能,但不知道是否有方法对多个数据池进行写入?

dennyqiang 发表于 2010-3-27 02:00:52

不过为何要关联多个数据池?

其实我不太推荐大家使用数据池,在一个企业级的自动化测试架构中,使用数据库作为数据驱动源会更好。
页: [1]
查看完整版本: RFT中DataPool的使用