LambdaClient
Caution
In some cases, using this library's operations might impact performance and skew your test results.
To ensure accurate results, consider executing these operations in thesetup
andteardown
lifecycle functions. These functions run before and after the test run and have no impact on the test results.
LambdaClient
interacts with AWS Lambda. With it, you can invoke a Lambda function.
Both the dedicated lambda.js
jslib bundle and the all-encompassing aws.js
bundle include the LambdaClient
.
Methods
Function | Description |
---|---|
invoke(name, payload, [options]) | Invokes an AWS Lambda function. |
Throws
LambdaClient
methods will throw errors in case of failure.
Error | Condition |
---|---|
InvalidSignatureError | When invalid credentials were provided. |
LambdaInvocationError | When AWS replied to the requested invocation with an error. |
Examples
import {
AWSConfig,
LambdaClient,
} from 'https://jslib.k6.io/aws/0.12.3/lambda.js';
import { check } from 'k6';
const awsConfig = new AWSConfig({
region: __ENV.AWS_REGION,
accessKeyId: __ENV.AWS_ACCESS_KEY_ID,
secretAccessKey: __ENV.AWS_SECRET_ACCESS_KEY,
sessionToken: __ENV.AWS_SESSION_TOKEN,
});
const lambdaClient = new LambdaClient(awsConfig);
export default async function () {
const response = await lambdaClient.invoke('add-numbers', JSON.stringify({ x: 1, y: 2 }));
check(response, {
'status is 200': (r) => r.statusCode === 200,
'payload is 3': (r) => r.payload === 3,
});
}