调用另一个功能文件中的函数
功能文件1-功能文件1.Feature
* def add2Number =
"""
function (a,b){
var c = a+b;
return c}
"""
* def add3Number =
"""
function (a,b c){
var d = add2Number(a,b) + c;
return d}
"""
功能文件2-功能文件2.Feature
* def obj = call read(featureFile1.feature)
* print obj.add2Number(1,2)
* print obj.add3Number(1,2,3)
"print obj.add2Number(1,2(";这条线路运行良好"打印对象add3Number(1,2,3(";该行抛出错误如下org.graalvm.polyglot.PolyglotException:ReferenceError:";add2Number";未定义
问题:上面的代码只是一个用于解释的示例函数;引用错误:";add2Number";未定义";
有什么解决方案吗
我已经添加了我的解决方案-https://github.com/Sudharsandhoni/KarateDemo,
特点:解决方案1
场景:解决方案1描述:要解决错误:"org.graalv.PolyglotException:ReferenceError:";pi";未定义"。需要告诉(定义(调用文件中的pi是什么
- def find=调用读取("Feature1.feature"(
- def-pi=find.pi
- 打印find.areaOfCircle(5(
- 打印查找圆周(5(
Event尽管我找到了另一种方法,如果需要调用调用内部函数/变量的函数,那么也需要在调用特性中定义相同的函数。
如果只使用很少的内部属性,那么这可能很容易。但如果计数增加,则很难定义所有计数。
正在等待任何更好的解决方案。
尝试在文件1中为两个函数创建单独的场景,并为每个场景指定一个标记名。现在,使用标记和功能文件名,您可以调用特定的函数/功能。