我可以使用可变字符串来调用方法吗?

Can I use a variable string to call a method?

这是我正在尝试做的事情:

我有 25 个 运行 的查询在一个单独的文件中。它们都是根据 returning 的名称命名的。所以如果我想遍历它们,我可以只使用一个变量来调用我想要的每个查询 return?

    var _Q = QueryFile;

    var part1 = generalName;  //Amount
    var part2 = aqString.Replace(Object1.wSelectedItems, " ", "");  //Due
    var part3 = aqString.Replace(Object2.wText, " ", "");  //LessThan

    var allParts = part1+part2+part3;  //AmountDueLessThan

    var query = _Q.queryName();  //query = AmountDueLessThan()

    Log.Message(query);

第 1 部分从不更改,第 2 部分每五次迭代更改一次,第三部分每次迭代更改一次。我正在尝试编写一个函数来执行此部分,以便它适用于所有 25 个查询。

有没有办法格式化 queryName 字符串以从 QueryFile 调用查询?

谢谢,

我不确定你的情况下 QueryFile 是什么。

通常,在 TestComplete 中有两种方法可以使用 JScript/JavaScript。

  1. 如果单独的文件作为脚本单元添加到您的项目中,您可以使用 Runner.CallMethod 例程:

    var _Q = "MyFile";
    var fName = "AmountDueLessThan";
    Runner.CallMethod(_Q + "." + fName);
    
  2. 使用 eval 函数。

    var fName = "AmountDueLessThan";
    eval(fName + "()");