testing - RFT 中一个脚本的多个数据池

标签 testing automated-tests rft

有什么方法可以将两个数据池添加到一个脚本中吗?或者换句话说,我们如何才能从两个不同的数据池获取输入到单个脚本。

提前致谢。

最佳答案

是的,您可以手动加载和管理任意数量的数据池。

    /**
 * Creates a IDatapoolIterator pointing the first record
 * @param datastore default project path
 * @param dataPoolPath relative path in the project
 * @return IDatapoolIterator pointing the first record
 */
public static IDatapoolIterator getDataPoolIterator(String datastore, String dataPoolPath)
{
    java.io.File dpFile = new java.io.File(datastore, dataPoolPath+".rftdp");

    DatapoolScriptSupport dss = new DatapoolScriptSupport();

    IDatapool dp = (IDatapool) dss.dpFactory().load(dpFile, true);
    IDatapoolIterator dpIter = dss.dpFactory().open(dp, null);

    dpIter.dpInitialize(dp);
    dpIter.dpReset();

    return dpIter;
}

然后在你的代码中

myDatapool = getDataPoolIterator((String)getOption(IOptionName.DATASTORE), "relative/path/intheproject");

您可以通过以下方式访问数据池中的任何变量

myDatapool.dpString("Variable");

根据您需要的变量类型使用正确的方法。使用

myDatapool.dpNext();

您将前进到数据池中的下一条记录。 希望这会有所帮助。 此处提供更多信息:IBM Help System: Datapool

关于testing - RFT 中一个脚本的多个数据池,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8532061/

相关文章:

node.js - 测试函数时替换变量的值

java - 如何进行适当的测试?

java - 评估功能自动化测试脚本的代码覆盖率

java - 处理 Java/Selenium 中停止处理的浏览器弹出窗口

c++ - 如何测试编译器不应该接受的东西

testing - QTP、QC、Load Runner 和 RFT 教程

java - 如何使用 RFT 覆盖 IE 地址栏中的 URL?

node.js - Jest 的 globalSetup 使我的测试无法被识别

java - 这在Java中可能吗? (要执行的代码)如果(条件)

ios - iTunes Connect、内部测试、供应商 ID 更改