2018年API测试工具Top10
本文首发于微信公众号: 【软测小生】
API测试(应用程序编程接口测试)是一种软件测试类型,它着重于确定所开发的API是否满足关于应用程序的功能、可靠性、性能和安全性的预期。
根据谷歌Trends,在过去几年里,对API/Web服务测试的兴趣一直在稳步增长。Smartbear 2017年对5000多名软件专业人士的研究显示,在未来两年内,将超过50%的测试自动化的API测试人员的数量预计将增长30%(从59%增长到77%)。此外,80%的受访者表示他们负责一些API测试。
为API自动化测试提供正确的流程、工具和解决方案比以往任何时候都更加重要。API测试是CI/DevOps实践成功的一个重要组成部分。
本文将提供API测试工具排名靠前的总结,这些工具涵盖了开源和商业解决方案,测试团队可以选择这些解决方案来满足他们的需求。SoapUI、Katalon Studio和Postman是排名前三的工具。
SoapUI是一个用于API测试的无头功能测试工具,允许用户轻松地测试REST和SOAP API以及Web服务。
免费版(Free package): 使用SOAPUI的免费包,用户可以获得完整的源代码并构建他们喜欢的特性。
收费Pro版本:
Website: https://www.soapui.org/
价格: 免费 和 $659/年(美元)
Katalon Studio是一个用于API、Web和移动应用程序的免费测试自动化工具。它正在成为API/Web服务测试的领先工具,并将自己定位为面向开发人员和测试人员的全面端到端**(end-to-end)**自动化解决方案。
Katalon Studio使用各种类型的命令和参数化功能支持SOAP和REST请求。此外,在排名靠前的 API工具中,将UI和API/Web服务结合起来用于多个环境(Windows、Mac OS和Linux)的功能被认为是Katalon Studio的独特优势。
功能亮点:
Website: https://www.katalon.com
价格: 免费
最初作为Chrome浏览器插件,Postman现在用Mac和Windows的原生版本扩展了他们的解决方案。
Website:https://www.getpostman.com/
价格:免费- $21美元/用户/月
Tricentis Tosca是一个针对敏捷和DevOps的持续测试平台。Tricentis Tosca的好处包括:
Website: https://www.tricentis.com/
定价: Contact Sales(接触销售)
Apigee是一个跨云API测试工具,允许用户度量和测试API性能,支持并使用Swagger等其他编辑器构建API。
Website: https://apigee.com/api-management/
价格:免费试用——每月2500美元
JMeter(开源)广泛用于功能API测试,尽管它实际上是为负载测试创建的。
Website:https://jmeter.apache.org/
价格:开源
REST-assured是一种开放源码的特定于Java领域的语言,它使测试REST服务更加简单。
网站:http://rest-assured.io/
价格:开源
Assertible是一个专注于自动化和可靠性的API测试工具。
网站:https://assertible.com/
价格:免费- $500(美元)/月
Karate DSL是一种新的API测试工具,它帮助以一种简单的方式为基于API的BDD测试创建场景,而无需编写步骤定义。这些定义是由Karate DSL创建的,因此用户可以快速启动API测试。
网站:https://github.com/intuit/karate
价格:开源
很扎心,但却是真的!
我们相信上面的列表列出了最好的解决方案,如果您计划采用API自动化测试的话。然而,就像这个行业的大多数解决方案一样,找到一个理想的工具来解决所有问题几乎是不可能的。
有些人可能会发现商业收费版(Postman, Tricentis Tosca,…)的特点已经足够了,但所有权的成本将是关键因素。
开源解决方案(Rest-Assured, Karate DSL,…)是负担得起的,但需要熟练的资源和努力来实现正确的框架。似乎是成本和其他因素(Katalon Studio、Postman)之间的相对平衡的工具对于需要考虑的特定项目类型可能有缺陷。
API测试确立了自动化测试的趋势,并且将开发更多的工具来满足软件开发团队日益增长的需求。找到完美的工具仍然很困难,但是我们有一个好消息,你比以前有了更多的选择。仔细考虑您的需求,每种解决方案的优缺点在早期不要太雄心勃勃,并从上面的列表中挑选出5个相关的候选者。通过创建这些解决方案的POC,您将更好地了解项目的关键因素,并对候选列表进行微调。这种方法为您提供了一个很好的机会,当您的项目更加成熟时,您可以为下一个选择的当前状态和信息确定合适的工具。