是否可以将 EasyMock/JMock 用于 AWS Java SDK 模拟和代码覆盖率?

Is it possible to use EasyMock/JMock for AWS Java SDKs mocking & code coverage?

我正在使用 AWS Java SDK 连接到多个 AWS 服务,例如 DynamoDB、API-Gateway、EC2、GlueJob、CloudWatch、SQS、S3 等。

问题:是否可以将 EasyMock/JMock 用于 AWS Java SDK 模拟和代码覆盖?

注意:我知道无服务器模拟框架,例如 LocalStack、DynamoDbLocal、SAM CLI、DynamoDbLocal,但我想知道是否可以使用 EasyMock/JMock java 库完全实现模拟???

有人试过使用 EasyMock/JMock 模拟 AWS 服务吗?

谢谢, 桑达尔

是的。您只需要模拟您正在调用的服务和 return 您的测试需要的任何答案。

但是,我建议将 AWS 调用包装在一个 class 中,它本身将被其他人模拟。因为 AWS 没有那么有趣。由服务 return 编辑的对象通常相当复杂。

所以在 class 中隔离 AWS,然后只模拟 AWS 来测试这个 class。尝试检索真实呼叫以正确模拟来自服务的答案。