Challenge Overview
Context
Project Context
Currently the automation of scripts is built with "Selenium grid & node". As the test suite becomes bigger, time taken to execute the automation scripts correspondingly increases. It also leads to higher cost & scalability challenges.
The client needs a solution using technologies like serverless cloud services, to execute parallel threads with higher performance and lower effective cost.
The project is to build a Serverless Architecture, to improve the speed of execution and reduce overall cost for Automation Scripts.
Challenge Context
In this challenge, we will design the serverless architecture. And PoC is needed so that we can finalize the solution architecture.
Expected Outcome
- Architecture design document
- PoC
Challenge Details
Technology Stack
- AWS
- serverless.com or AWS Sam
- Java 8 or Java 11
Individual Requirements
Current state:
Jenkins builds all the necessary packages and send them to Selenium Hub Server.
After all tests finish, we will be able to see the result.
With the new approach, we would like to have the tests run in AWS.
One script will be used to trigger one TestRunner. The trigger includes Test Run ID, a bunch of java jar files and configuration.
TestRunner will distribute the java jar files to aws lambda based on the configuration.
After all test executions finish, Report Generator should be able to collect all test results and generate report.
About configuration, we should be able to control how to distribute the tasks.
The tests in java jar files will use Chrome driver. A local chrome driver should be setup inside lambda.
Scorecard Aid
Judging Criteria
- Cost / Scalability / Performance.
- Feasibility.
Final Submission Guidelines
Document of the architecture design, please cover the cost and scalability.
PoC codebase.