如何在空手道配置 .js 中全局声明具有所需功能的 appium 驱动程序?

How to declare appium driver globally in karate config.js with desired capabilities?

提问人:sschandra 提问时间:12/30/2021 最后编辑:sschandra 更新时间:12/30/2021 访问量:89

问:

我正在尝试从配置 .js 以及所需的功能声明和清除 appium 驱动程序会话,但我无法启动驱动程序会话。

我的功能文件如下所示:(在 config.js 中声明之前)

Background: Driver setup

* configure driver = { type: 'android', webDriverUrl: 'http://localhost:4723/wd/hub', start: false}
* driver { webDriverSession: { desiredCapabilities : "#(desiredConfig)" } }

Scenerio: perform click
* click('elementPath')

在config .js中添加了以下行,然后我从功能文件中删除了第一行,它工作正常。

karate.configure('driver', { type: 'android', start: false, webDriverUrl: 'http://localhost:4723/wd/hub' });

然后,我的功能文件如下所示:

Background: Driver setup

* driver { webDriverSession: { desiredCapabilities : "#(desiredConfig)" } }

Scenerio: perform click
* click('elementPath')

现在我被困在移动

* driver { webDriverSession: { desiredCapabilities : "#(desiredConfig)" } }

驱动程序会话部分(上面的一个)到配置 .js

尝试了以下内容:

  1. 在 config.js 中创建驱动程序变量并分配

    { webDriverSession: { desiredCapabilities : desiredConfig } } 尝试在功能文件中使用驱动程序变量

  2. 直接声明所需的配置 json,没有运气

空手道

评论

0赞 Peter Thomas 12/30/2021
我不知道。希望别人能帮助你,但我认为你最好的选择是做一些研究并看看其他答案
0赞 Peter Thomas 12/30/2021
我想我明白了 - 嵌入式表达式在 JS 中不起作用。阅读文档(下次在提问时更清楚地说明您“尝试”了什么)stackoverflow.com/a/69965658/143475
0赞 sschandra 12/30/2021
嘿彼得,感谢您的回复......尝试在 config.js 中将驱动程序声明为变量,然后分配 { webDriverSession: { desiredCapabilities : desiredConfig } }
0赞 sschandra 12/30/2021
尝试直接添加所需的配置 JSON 并分配给驱动程序,然后尝试从功能文件调用驱动程序,此方法也不起作用
0赞 sschandra 12/30/2021
@PeterThomas 已编辑的问题,但有更多细节

答: 暂无答案