Fixing Issues With MultiConcurrency Testing (#22)
chore: removing duplicated line
chore: proposed changes
chore: other fixes
chore: change action
chore: addressing comments
chore: add network stuff
chore: revert the changes on action test
chore: other changes
chore: changes
chore: added some comments
Co-authored-by: Davide Melfi dmelfi@amazon.com
版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9
京公网安备 11010802032778号
Containerized Test Runner For AWS Lambda
This action runs containerized tests. This is useful for testing how the Runtime Interface Client responds to different events. This action is used by public runtimes.
Usage
To use this action in your GitHub workflow, add the following step:
Parameters
suiteFileArray: JSON array of glob patterns pointing to test suite filesdockerImageName: Name of the Docker image to use for running teststaskFolder: Path to the folder containing test task filesMulti-Concurrency (MC) Test Scenarios
The test runner now supports multi-concurrency test scenarios that can execute multiple requests concurrently against a Lambda container. This is useful for testing concurrent execution behavior, race conditions, and performance under load.
Usage
Use the
--scenario-diroption to specify a directory containing Python scenario files:Creating MC Scenarios
Create Python files ending with
_scenarios.pyin your scenario directory:Request Model
The
Requestclass supports:payload: Request payload (JSON or raw)assertions: List of assertion dictionariescontent_type: Content type (default: “application/json”)delay: Optional delay before sending requestheaders: Additional HTTP headersclient_context,cognito_identity,xray: Lambda context dataConcurrentTest Model
The
ConcurrentTestclass supports:name: Test scenario namehandler: Lambda handler functionenvironment_variables: Environment variables for the containerrequest_batches: List of request batches (each batch executes concurrently)task_root: Optional task root directoryruntimes: Optional list of supported runtimesCurrent status
This is an alpha release and not yet ready for production use.
Security
See CONTRIBUTING for more information.
License
This project is licensed under the Apache-2.0 License.