如何在AWS Lambda中使用Java+运行Google Chrome进行Selenium测试;镀铬器

如何在AWS Lambda中使用Java+运行Google Chrome进行Selenium测试;镀铬器,java,selenium,aws-lambda,selenium-chromedriver,headless,Java,Selenium,Aws Lambda,Selenium Chromedriver,Headless,我使用以下版本: 硒-3.14.0 Webdrivermanager-2.2.4 要创建ChromeDriver,我使用以下配置: WebDriverManager.chromedriver() .targetPath("/tmp") .setup(); ChromeOptions options = new ChromeOptions(); options.addArguments("--headless", "--no-s

我使用以下版本:

  • 硒-3.14.0
  • Webdrivermanager-2.2.4
要创建ChromeDriver,我使用以下配置:

WebDriverManager.chromedriver()
            .targetPath("/tmp")
            .setup();

    ChromeOptions options = new ChromeOptions();
    options.addArguments("--headless", "--no-sandbox", "--disable-dev-shm-usage");
    options.setBinary("/tmp");

    ChromeDriver driver = new ChromeDriver(options);
当我运行lambda时,会发生以下异常(来自lambda日志):

在AWS Lambda中安装Chrome浏览器并为ChromeDriver提供Chrome浏览器有什么好方法吗?

ChromeOptions的
setBinary()
方法应该用于设置Chrome浏览器的路径。问题是您正在使用设置WebDriverManager下载chromedriver(即Selenium WebDriver与Chrome通信所需的二进制文件)的路径。因此,您需要删除该行:

options.setBinary("/tmp");

你有没有碰巧让它工作过?除了C#之外,我正在与同样的问题作斗争。@user1011627不幸的是,我还没有找到答案。
options.setBinary("/tmp");