首页 > 解决方案 > 如何在使用 aws-sdk-mock 时进行参数验证

问题描述

我正在使用带有 Jest 的 aws-sdk-mock 来测试 AWS Lamda。

我的 lambda 使用 AWS Polly Service 将文本转换为语音。以下是我想要模拟以及进行参数验证的一段代码。

var task = await polly.startSpeechSynthesisTask({
      OutputFormat: "mp3",
      Text: fullTextSSML,
      TextType: "ssml",
      Engine: audioProfile.engine,
      VoiceId: audioProfile.voice,
      OutputS3KeyPrefix: `${orgId}/${integrationId}/fa`,
      OutputS3BucketName: process.env.AUDIO_BUCKET,
      SnsTopicArn: process.env.POLLY_TASK_COMPLETED_SNS_TOPIC_ARN
    }).promise();

我写了一个模拟如下。

 AWS.mock('Polly', 'startSpeechSynthesisTask', ()=>{
            return {
                SynthesisTask:{
                    TaskId: "0a4a503d-8be8-46a6-a638-1621d3405fb0"
                }
            }
        });

如何模拟此服务以及同时进行参数验证?

标签: node.jsaws-lambdajestjssinonaws-sdk-mock

解决方案


推荐阅读