如何在 AWS lambda 中部署 selenium 测试套件

Posted

技术标签:

【中文标题】如何在 AWS lambda 中部署 selenium 测试套件【英文标题】:How to deploy selenium test suite in AWS lambda 【发布时间】:2020-01-14 07:27:20 【问题描述】:

我有一个用于 UI 测试的测试套件。我可以在本地机器上运行相同的套件并且运行良好,但我想将相同的套件部署到 AWS Lambda 中。 我试过了,但 AWS lambda 提交到午餐 Chrome 进行测试。

【问题讨论】:

【参考方案1】:

经过大量研发后,我能够在 AWS Lambda 中启动无头 Chrome 在 AWS Lambda 中启动 headless chrome 时,我们需要设置以下选项。

    ChromeOptions options = new ChromeOptions();
    options.addArguments("headless");
    options.addArguments("window-size=1366,768");
    options.addArguments("--single-process");
    options.addArguments("--disable-dev-shm-usage");
    options.addArguments("--no-sandbox");
    options.addArguments("--user-data-dir=/tmp/user-data");
    options.addArguments("--data-path=/tmp/data-path");
    options.addArguments("--homedir=/tmp");
    options.addArguments("--disk-cache-dir=/tmp/cache-dir");

完整实现: https://github.com/pbgarodi/Automation-testing-using-aws-lambda

【讨论】:

以上是关于如何在 AWS lambda 中部署 selenium 测试套件的主要内容,如果未能解决你的问题,请参考以下文章

如何在不使用 SAM 的情况下使用 AWS 代码部署来部署简单的 AWS lambda 函数?

如何使用 AWS Lambda 脚本通过 Terraform 部署 AWS 基础设施

如何增加 AWS lambda 部署包的最大大小 (RequestEntityTooLargeException)?

使用 AWS CDK 在 AWS Codepipeline 中部署 Python Lambda 函数

如何将 AWS 区域传递给 lambda 函数?

如何从 Lambda AWS 验证 Google API?