关于 Botium-core 和其他自动化框架的问题

问题描述

是否有人尝试过单独使用 botium-core 进行网络/移动对话测试,而其余的网页相关测试仍保留在现有的自动化框架中,例如 nemo、nightwatch 或 roboautomation 框架。

例如登录网页和导航/启动聊天机器人可以保留在现有的自动化框架中,一旦启动,所有对话断言都可以通过botium完成。

任何代码或文档参考都会非常有帮助。

解决方法

Botium 基于 WebdriverIO / Selenium - 参见 Github Repository for the Botium Webdriver Connector。对于每个测试用例,它会根据设置启动一个单独的新 Selenium 会话或 Headless chrome 会话。

为了做你想做的事情,需要像 Selenium 会话切换之类的东西,这是不支持的(我不知道这在技术上是否可以使用 WebdriverIO/Selenium)。

您可以(并且在大多数情况下,您必须)添加自己的 Javascript/Selenium 脚本来登录和初始登录聊天机器人小部件 - 请参阅 Botium in a nutshell。这看起来像 botium.json 中的这个例子:

 ...
 "WEBDRIVERIO_OPENBOT": "module.exports = container.findElement('#onetrust-accept-btn-handler').then(ccBtn => ccBtn.waitForClickable({ timeout: 20000 }).then(() => ccBtn.click())).then(() => container.findElement('.troy__start-icon')).then(startChat => startChat.waitForClickable({ timeout: 20000 }).then(() => startChat.click()))",...

(复制自 here