LambdaClient
注意
在某些情况下,使用此库的操作可能会影响性能并使测试结果失真。
为了确保准确的结果,请考虑在setup
和teardown
生命周期函数中执行这些操作。这些函数在测试运行之前和之后运行,对测试结果没有影响。
LambdaClient
与 AWS Lambda 交互。通过它,您可以调用 Lambda 函数。
专门的 lambda.js
jslib 包和包含一切的 aws.js
包都包含 LambdaClient
。
方法
函数 | 描述 |
---|---|
invoke(name, payload, [options]) | 调用一个 AWS Lambda 函数。 |
抛出
LambdaClient
方法在失败时将抛出错误。
Error | 条件 |
---|---|
InvalidSignatureError | 提供了无效凭据时。 |
LambdaInvocationError | 当 AWS 对请求的调用回复错误时。 |
示例
import {
AWSConfig,
LambdaClient,
} from 'https://jslib.k6.io/aws/0.13.0/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,
});
}