如何从空手道功能文件中的 .js 文件调用特定的 javascript 函数

How to call a particular javascript function from .js file in karate feature file

假设我在实用程序 js 文件中保存了以下函数。

function getCurrentDate(){
return 'date';
}

function getMonth(){

return 'Oct';
}

请帮助我如何在功能文件中访问这些方法中的任何一个。

我尝试了以下代码,但它不起作用。

* def fun = call read('Utility.js')

* def result = getData()
or
* def result = fun.getData()

在空手道中,一个 JS 文件只能包含一个函数,并且不需要名称,请仔细查看示例。

我真的不建议将多个函数合并到一个文件中,这只会让事情更难维护。但如果你真的坚持,方法如下:

function() {
  return {
    getCurrentDate: function(){ return 'date' },
    getMonth: function(){ return 'month' }
  }
}

编辑:这里有一个更好的答案:

* def data = karate.read('classpath:<path>/getRandomString.js')(<inputToTheFunctionIfAny>);

以上代码有效。