Home / Companies / Octopus Deploy / Blog / Post Details
Content Deep Dive

Selenium series: Preparing the resources

Blog post from Octopus Deploy

Post Details
Company
Date Published
Author
Matthew Casperson
Word Count
856
Language
English
Hacker News Points
-
Summary

The blog post by Matthew Casperson discusses the challenges and solutions for running Selenium WebDriver tests using a headless Chrome browser within an AWS Lambda environment. Although Lambda is considered serverless, users must still configure the environment every time the application runs, specifically by ensuring the availability of the Chrome browser and binary driver. Due to the non-standard nature of the Linux environment on Lambda, standard Chrome installations are incompatible; instead, a custom build of Chrome is required, which can be automated and obtained from a GitHub repository. Additionally, the Chrome binary driver needs to be configured since standard PATH configurations are restricted on Lambda. To overcome Lambda's package size limitations, additional files like the Chrome distribution and driver are downloaded at runtime from an AWS S3 bucket, leveraging high-speed access due to both Lambda and S3 being hosted by AWS. The post provides instructions for downloading specific versions of Chrome and the driver compatible with Lambda, uploading them to S3, and making them publicly accessible for the testing framework.