- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经完成了一个 python 测试,它会启动一个 localstack 容器,并在 localstack 容器内提供一个 S3 存储桶和一个 lambda。
测试如下所示:
def my_test(self, setup_terraform_infra):
s3 = boto3.resource('s3')
buckets = list(s3.buckets.all())
assert len(buckets) == 1
lambda_client = boto3.client('lambda', region_name='us-east-1')
payload = json.dumps(self.load_file(TEST_INPUT_SUCCESS_MESSAGE))
list_function_resp = lambda_client.list_functions(
MasterRegion='us-east-1',
Marker='',
MaxItems=123
)
assert len(list_function_resp['Functions']) == 1
response = lambda_client.invoke(
FunctionName='function',
InvocationType='RequestResponse',
Payload=payload,
)
在上面的测试中一切正常,直到您点击调用函数:
response = lambda_client.invoke(
FunctionName='function',
InvocationType='RequestResponse',
Payload=payload,
)
这会导致以下错误:
botocore.exceptions.ClientError: An error occurred (InternalFailure) when calling the Invoke operation (reached max retries: 4): Error executing Lambda function arn:aws:lambda:us-east-1:000000000000:function:function: You must specify a region.
botocore.exceptions.NoRegionError: You must specify a region.
如果我跳到测试创建的 docker 镜像上,我可以重现此错误:
awslocal lambda invoke --region eu-west-1 --function-name "arn:aws:lambda:us-east-1:000000000000:function:function" --payload "{}" reponse.json
错误:
>>> botocore.exceptions.NoRegionError: You must specify a region.
我尝试在 docker 镜像中设置 AWS_DEFAULT_REGION 和 DEFAULT_REGION 。但问题仍然出现。
我已经没有想法了
最佳答案
我之前也遇到过完全相同的问题,不幸的是,错误消息具有误导性,但我的问题是由于对 Lambda 使用了错误的 InitationType
造成的。
设置正确的 InvocableType
后(在我的例子中,它应该设置为 Event
而不是 RequestResponse
),它可以正常工作。
希望这也能解决您的问题。
关于python - pytest localstack测试报错You必须指定区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58594810/
我正在尝试让 localstack/localstack 的本地 docker 实例与 node.js aws-sdk 库一起使用。但是我可以获得一个简单的 createTopic 来在 sns 客户
在我的 ubuntu 18 机器上,我无法运行 localstack 的最新 docker 镜像。 即使结束消息显示为“就绪”,我仍然无法使用以下命令访问它。 awslocal --endpoint-
我正在使用 localstack 来模拟 SNS 和 SQS,但每次尝试使用仪表板时,我都会收到此错误: 2019-08-19T09:59:58:WARNING:localstack.dash
我有以下代码片段,应该在 AWS Lambda 函数中运行: AWSSecretsManager client = AWSSecretsManagerClientBuilder.standard().
我正在使用 serverless 来部署 AWS 无服务器堆栈。 (即:lambda、sqs、sns)。我想在尝试部署到 AWS 之前先在本地运行。我已经搜索并看到 localstack 适合我的用例
作为测试开发人员,我正在尝试使用 localstack 来模拟 SQS 以进行集成测试。 Docker 撰写: localstack: image: localstack/localsta
我正在使用 docker 运行 Localstack 和图像 0.11.1 。 我打开了 es 服务并暴露了端口 4566 - 根据文档( https://github.com/localstack/
我想对尝试向 AWS SNS 发布消息的应用程序运行功能测试。我尝试了 LocalStack,发现它可以完成我在本地模拟和发布消息所需的一切。但是我的应用程序使用 amazon sdk client
我正在尝试使用Localstack在我的集成测试中模拟 AWS。作者指导我们将 Localstack 与 Java 测试集成,如下所示: import cloud.localstack.Localst
我目前想使用 LocalStack 模拟 AWS 环境。但是在创建堆栈时,该服务返回了一个错误代码:500。 这是我的模板文件: AWSTemplateFormatVersion: '2010-09-
我正在尝试使用 LocalStack 进行端到端测试,但无法阅读通过 LocalStack/SES 发送的电子邮件。有没有办法做到这一点? 我希望我的 Cypress e2e 测试调用我的后端服务,后
我正在尝试为 Spring 引导服务提出一些集成测试。由于该服务使用 AWS SQS 和 DynamoDB,我倾向于利用 testcontainers 的 Localstack 模块进行集成测试。但是
我正在尝试在我的 docker 容器中使用 localstack。我为 s3 创建了 demo-bucket。我可以查看我从终端上传的文件,但我无法从代码访问 s3。我在哪里犯了错误?我在下面分享我的
我正在尝试在我的 docker 容器中使用 localstack。我为 s3 创建了 demo-bucket。我可以查看我从终端上传的文件,但我无法从代码访问 s3。我在哪里犯了错误?我在下面分享我的
我正在使用无服务器框架和 localstack,但部署失败并显示错误消息 View the full error output: https://us-east-1.console.aws.amazo
我在使用 LocalStack 测试 MassTransit 时遇到问题,但在 AWS 中使用真正的 SNS/SQS 一切正常,所以我怀疑这是 LocalStack 的问题,除非 MassTransi
在我的 docker-compose 中使用 localstack 主要是为了模仿 S3。 我知道我可以创建存储桶,这不是问题。我想做的是在运行 docker-compose up 时自动创建存储桶。
如何实例化同时具有自定义区域和 ServiceURL 的 .NET AWSSDK SQS 客户端? 更多信息: 我在 localstack 中设置了一个队列,我可以使用 CLI 通过 sqs list
如何实例化同时具有自定义区域和 ServiceURL 的 .NET AWSSDK SQS 客户端? 更多信息: 我在 localstack 中设置了一个队列,我可以使用 CLI 通过 sqs list
我已经设置了在 docker 上运行的 localstack。我有一个 .Net Core 2.1 c# Lambda 函数,它尝试连接到本地主机上的 MySql 数据库。这是我在控制台中得到的结果:
我是一名优秀的程序员,十分优秀!