【发布时间】:2020-04-20 15:22:42
【问题描述】:
我一直在做一个项目,该项目将在 AWS lambda 函数内运行 webdriverio (https://webdriver.io/) 浏览器测试。我在本地运行没有问题,但是一旦部署到 AWS,让它在 lambda 内部工作就有点麻烦了。
我做了一个公开的回购,显示了我正在尝试做的事情: https://github.com/Drewster727/wdio-lambda
如果您查看该存储库,您会发现我正在利用无服务器框架 (https://serverless.com/) 进行打包并部署到 AWS。您还将看到,我的 package.json 文件中安装了一些 @wdio 和 chomedriver 软件包,这些软件包应该允许我执行所需的操作。诀窍当然是 chrome 二进制文件需要与 linux 兼容(而不是像我的本地开发环境那样的 osx)——这就是自述文件说明在 lambda docker 容器内构建和打包的原因。
我遇到的问题是当我执行该函数时,我检查了 cloudwatch 日志,它会告诉我各种各样的问题,具体取决于我如何定位 chrome 二进制文件。在当前状态下,错误显示this
在此之前,我会看到 chromedriver 无法启动的问题。这很有趣。我很想达到可以在 firefox (gecko) 或 chromedriver 之间进行选择并允许它们都运行的地步,但这比我预期的要难。
我正在寻找是否有人对我如何解决此问题并使其正常工作有提示/建议。随意分叉回购。我被难住了!
谢谢, 画了
【问题讨论】:
标签: node.js amazon-web-services webdriver serverless-framework webdriver-io