【51CTO.com快译】充分利用REST的API大行其道,用于创建、测试和管理这种API的工具也方兴未艾。无论你是API新手还是在赶进度的专家,都可以获得诸多服务,帮助API从概念阶段进入到生产阶段,许多服务不用花一分钱。
以下是处理API的几项免费服务。一些是简易的应用程序,可简化组装或测试API的任务。另一些是完整的专业API管理服务的入门版,让你可以先试用一下;若有需要,可升级到更专业的(付费)服务。
1.Amazon API Gateway
Free Tier for AWS让开发人员可以免费享用AWS提供的大多数服务,包括Amazon API Gateway。免费的Amazon API Gateway每月最多可以进行100万个API调用,只持续一年,但已足以让你可以上手。
完整的付费版Amazon Panel Gateway让你可以使用流量管理、API版本管理和监控软件包的所有部分等meta-tool工具,为在Amazon EC2和AWS Lambda上构建的应用程序或“任何Web应用程序”构建前端API。
链接:
2.APImetrics
APImetrics是一种API监控和警报服务,包括可视化API设计器、支持REST和SOAP API(简化了后者到前者的转换)、允许按顺序触发多个API调用的工作流系统,以及针对需要进入下一阶段但可能出岔子的任何组件的仪表板。没有免费版,但该公司确实提供各档服务的14天免费试用。基本方案每天提供500个调用,每月最多15500个调用,每月收费15美元。
3.Assertible
Assertible让你可以创建简单的测试或断言,以监控生产环境中的API。可以从常见的第三方格式导入API,包括Swagger、Postman和curl。如果你在默认域之外进行测试,可以按各种标准对测试进行分组,然后使用各环境参数(比如staging与production)或可选的SSL验证来执行测试。你还可以按计划或通过触发器来执行Assertible测试,并将测试状态发布到GitHub上。
个人方案免费,不过它只允许两项Web服务、每项服务10个测试,保留1000个结果。付费方案起价每月25美元,提高了许多使用上限,允许测试更频繁地运行。
4.BlazeMeter
BlazeMeter是一种API负载测试服务,可提供实时报告功能。其他优点包括地理分布式负载测试,这意味着你可以从多个大洲的服务器生成流量,并支持Apache JMeter创建的测试。
BlazeMeter的免费版让你每月可以运行10个测试(每个最多20分钟),支持最多50个并发用户,一个共享负载生成器和保留一周的数据。收费方案起价99美元,支持1000个并发用户,每年200个测试,数据可保留三个月。
链接:https://www.blazemeter.com/
5.Httpbin.org
Httpbin.org为你提供了一系列HTTP API端点响应,这些响应适用于测试或调试发送请求的前端。你可以用URL参数配置响应,而不是通过Web界面来配置响应。因而很容易使服务的使用实现自动化。
比如说,/links/:n端点让你可以请求拥有n个HTML链接的网页——比如说以此测试Web抓取器。Httpbin还有采用类似MIT的许可证的Python软件包。
6.IBM API Connect
与AWS一样,IBM Cloud提供了足够可靠的免费版,可以让开发人员领略可用的服务,但功能又不够全面,无法构建完整的生产级应用程序。与AWS一样,IBM Cloud在免费版IBM API Connect上提供API管理工具。
IBM API Connect最初只是一个创建API并将其与实际代码联系起来的工具。今天它还包括用于执行API方面的策略、鼓励发现、创建组合式API设计以及“将云服务与企业记录系统整合起来”的工具。该服务有免费版,每月可享用50000个API调用——完全足以试用了。请注意,30天不用后,IBM Cloud自动删除任何免费版服务,所以不用它会失去它。
链接:https://cloud.ibm.com/catalog/services/api-connect
7.JsonStub
JsonStub这个Web界面让你可以创建API端点的快速模型,返回静态文本(比如JSON响应)以测试查询数据的前端。它不是很复杂。JsonStub正是你所需的,正如JsonStub主页所写:“你在开发前端时模仿后端。”
8.Loader
你怎么知道面向公众的API在它上线的那一刻不会出严重故障?唯一的办法就是测试它在负载很大的情况下表现如何。通过Loader的Web界面或API创建目标主机的端点,测试结果将通过浏览器页面实时传送给你。服务的免费版让你可以每次测试一分钟的目标主机,每次测试最多10000个模拟客户和两个URL。付费方案起步价为每月99.95美元,大部分使用限制不复存在。
9.Mockable
Mockable是另一种用于模拟REST和SOAP端点的简易服务。基础版永久免费,包括为模拟提供HTTPS支持,不过删除了三个月内未使用的任何路由,日志仅保留24个小时或5MB,每个三名成员的团队最多只可以创建10个模拟。最棒的是,你甚至无需注册即可试用。一进入管理控制台,系统自动为你创建临时帐户。
10.Mockbin
Mockbin出自API专家Mashape(现为Kong),让你可以创建用于测试的模拟端点。端点可以使用任何HTTP方法,返回JSON、YAML、XML或HTML格式的结果,将CORS标头附加到响应,并记录和检查调用流量。 HAR格式的数据也可用于自动生成HTTP响应,因此模拟更接近工作服务器返回的实际结果。Mockbin还有一个宽松许可的开源项目。
11.Pyresttest
Python Rest Testing(简称Pyresttest)是用于基准测试和REST测试API的Python工具。测试以简单的YAML或JSON格式来加以定义,可以整合到工作流中或使用传统的Python编程机制加以扩展。缺点是:Pyresttest对Python 3仅提供初步的支持,自2016年以来未更新过。
链接:https://github.com/svanoort/pyresttest
12.Restlet Studio
Restlet Studio号称是“面向API设计的Web IDE”,它用一组可视化工具来描述API。除了设置方法或查询参数外,功能还包括为API自动生成框架代码,甚至自动生成客户端SDK。Swagger和RAML都得到支持。实际上,你在处理API时可以在Swagger和RAML之间切换。
免费方案仅支持一个API,但你可以获得数量无限制的测试调用、10MB存储数据和生产环境中的1000个调用。没错,你可以使用免费版部署到生产环境中,尽管不支持CI/CD或自定义域名之类的机制。
13.Runscope
Runscope提供基于Web的工具包,用于测试API以确保它们正常运行、返回有效数据并可以调试。可以使用Swagger 2.0 API定义标准来导入测试方案,并导入一系列其他常见格式,包括Runscope用于自身测试产品的格式。没有免费版,但除了定制的企业版外,所有定价方案都可以免费试用14天。
链接:https://www.runscope.com/pricing-and-plans
原文标题:13 free tools for API design, development, and testing,作者:Serdar Yegulalp
【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】