AWS推本地模拟器:离线测试云API

AWS发布本地模拟器,支持在PC上离线测试云API。该工具基于轻量化架构,覆盖超1300个服务接口,通过环境变量无缝集成现有工作流,无需修改代码即可运行单元测试。

AWS 推出本地模拟器:在 PC 上离线测试云 API

AWS 近日发布了一款可在个人电脑上运行的本地模拟器,旨在让开发者在不连接云端的情况下测试其应用程序。该工具通过模拟 AWS API 端点,支持在开发服务器、持续集成(CI)环境或本地机器上进行软件测试,且无需调用实际的 AWS 云服务。

支持超1300个API接口

基于 API 模型的轻量化设计

据高级专业解决方案架构师 Daniel Abib 介绍,这款模拟器并非对 AWS 云平台的全量复制,而是专注于提供 API 接口服务。为了保持工具在笔记本电脑 CPU 和内存占用上的轻量化,Abib 选择了这种架构方案。

目前,该模拟器支持那些在 GitHub 上的 AWS API models 仓库中拥有 API 模型的 AWS 服务接口。The Register 查阅该页面发现,相关条目已超过 1,300 个。尽管工具允许开发人员测试 API,但它并未复刻亚马逊云的所有功能。

功能局限性与“忠实度评分”

Abib 指出,模拟器存在特定的行为限制:“它不像 AWS 那样评估 IAM(身份和访问管理)策略,每个模拟器都作为一个单一的帐户运行,没有跨帐户或跨区域的行为。”他补充道,模拟器与真实 AWS 环境的匹配程度因具体服务和功能而异。

为明确这一差异,AWS 发布了“忠实度评分”,详细说明了模拟器在不同 AWS 服务上的工作紧密程度。Amazon 的目标是实现完整的真实性,确保模拟器在处理有效的 API 调用时产生与 AWS 相同的结果,而在处理无效调用时返回相同的错误信息。

AI 编码代理支持与安装方式

除了传统开发流程,该模拟器也支持由 AI 编码代理驱动。AWS 建议,检查项目是否兼容该工具的最简单方法是使用 aws-emulator 技能。借助此技能,AI 代理可以识别项目所依赖的 AWS 操作和资源,并将其与模拟器的可靠性测试及得分进行比对。根据 AWS 文档,这将帮助开发者明确项目中哪些部分可以完全依赖模拟器,哪些部分可能与真实 AWS 环境存在差异。

在安装部署方面,AWS 提供了 RPM 或 Debian 包供 Linux 用户使用;Mac 和 PC 用户则需通过 Docker 运行模拟器的镜像。

无缝集成现有工作流

用户只需安装并启动模拟器,将工具指向本地终端即可。当 AWS 模拟器运行时,它会自动生成凭证、配置文件和证书,并将它们写入 ~/.aws/emulator/9297/ 目录。随后,用户设置环境变量,使 AWS SDK 与本地电脑通信而非远程 AWS 服务器,从而保持应用程序代码不变。

在此基础上,现有的测试、CLI 脚本和编码代理均可按原有方式继续工作。例如,一个创建 AmazonDynamoDB 表、写入项目并读取数据的单元测试,可以在本地机器上直接运行,而无需进行任何部署操作。

评论 0

0/500

评论需审核后展示,请文明发言

💬
还没有评论,来说两句

相关阅读