node.js - 使用 botium-cli 运行自定义示例时找不到 webdriver 模块?
问题描述
我正在使用 Windows 10,并尝试运行从https://github.com/codeforequity-at/botium-connector-webdriverio.git克隆的自定义示例
我已经按照链接中的步骤安装了这些组件:
*安装 Webdriverio 和 selenium:https ://github.com/codeforequity-at/botium-connector-webdriverio
基本上,我已经从我的项目路径中执行了以下命令:
*npm install -g botium-cli npm install -g botium-connector-webdriverio
*botium-cli 初始化
*botium-cli 运行
注意:要运行测试,我在启动 selenium 后使用以下命令:
botium-cli 运行 --config C:\Botiumsample\samples\custom\botium.json --convos C:\Botiumsample\samples\custom\spec\convo
这是我得到的输出:
Error: Loading Botium Plugin failed.
Loading Botium plugin from webdriverio failed - Cannot find module 'webdriverio'
Require stack:
- C:\Users\myuser\AppData\Roaming\npm\node_modules\botium-cli\node_modules\botium-
core\src\containers\plugins\index.js
- C:\Users\myuser\AppData\Roaming\npm\node_modules\botium-cli\node_modules\botium-
core\index.js
- C:\Users\myuser\AppData\Roaming\npm\node_modules\botium-cli\src\run\index.js
- C:\Users\myuser\AppData\Roaming\npm\node_modules\botium-cli\bin\botium-cli.js
Loading Botium plugin botium-connector-webdriverio failed, try "npm install botium-
connector-webdriverio" - Cannot find module 'botium-core'
Require stack:
- C:\Users\myuser\AppData\Roaming\npm\node_modules\botium-connector-
webdriverio\dist\botium-connector-webdriverio-cjs.js
- C:\Users\myuser\AppData\Roaming\npm\node_modules\botium-cli\node_modules\botium-
core\src\containers\plugins\index.js
- C:\Users\myuser\AppData\Roaming\npm\node_modules\botium-cli\node_modules\botium-
core\index.js
- C:\Users\myuser\AppData\Roaming\npm\node_modules\botium-cli\src\run\index.js
- C:\Users\myuser\AppData\Roaming\npm\node_modules\botium-cli\bin\botium-cli.js
at tryLoadPlugin (C:\Users\myuser\AppData\Roaming\npm\node_modules\botium-
cli\node_modules\botium-core\src\containers\plugins\index.js:133:9)
at PluginConnectorContainer.Validate
(C:\Users\myuser\AppData\Roaming\npm\node_modules\botium-cli\node_modules\botium-
core\src\containers\PluginConnectorContainer.js:14:27)
尽管有响应,但我可以在此路径中看到 webdriverio 模块:C:\Users\myuser\AppData\Roaming\npm\node_modules\botium-connector-webdriverio\node_modules\webdriverio
请对此错误有任何想法?谢谢
解决方案
这与 Node.js 如何解析模块有关。您可以在 Internet 上的许多地方阅读有关此主题的信息,例如此处。但简而言之:
- Botium Core 作为 Botium CLI 的嵌套包安装
- Botium WebdriverIO 连接器安装在外部
- Botium WebdriverIO 连接器模块看不到 Botium Core
可用的几个选项:
将 Botium Core 安装为顶层的全局模块:
npm install -g botium-cli botium-core botium-connector-webdriverio
将所有内容安装在本地项目目录中(推荐 - 项目目录可以置于具有所有依赖项的 git 控制下):
npm init --yes && npm install botium-cli botium-connector-webdriverio
npx botium-cli init
npx botium-cli run
推荐阅读
- python - 使用 prometheus 监控 git 存储库
- python - AWS Python 开发工具包:DynamoDB 文档到 JSON
- r - dplyr 过滤器在具有相同参数名称的函数中未按预期工作
- c# - 有没有办法使 Graphics.TranslateTransform() 永久化?
- mysql - 查询问题,插入和匹配
- javascript - 有没有办法将文件从 Oracle Apex 上传到共享点
- html - 将页脚推到底部而不将鼠标悬停在信息上
- c++ - GTest - 不同类型的参数化测试
- arrays - 如何从数组中提取 Powershell validatescript 参数?
- c - 读取 SELECT'ed 值并将其作为 int 存储在 C 中