苦叶子说:对于新手,从UI级开始自动化测试,是一条作死的路,可能会直接扼杀你自动化测试之路。
随着越来越多的企业走上DevOps持续集成交付和持续部署开发左移/前置,意味着软件测试需要得到更快的反馈结果,以改进我们的质量。
这就是我们要开展API自动化测试的基石,以及作为整体自动化测试策略的一部分。
对于很多人而言,市面上眼花缭乱的API测试工具,让很多人面临着选择综合症,本文是我认为可以帮助你做出一个比较好选择的API测试工具,不管怎么样,它们都是不错的选择,停止各种比较,从中选择一个开始你的工作!!!
Rest Assured
如果你使用Java,Rest-Assured将是你首选的API测试工具,官方地址:http://rest-assured.io
REST -assured是一个流畅的Java库,您可以使用它来测试基于http的REST服务。它的设计考虑了测试,并且与任何现有的基于java的自动化框架集成。
它提供了一个类似于bdd的DSL,使得在Java中创建API测试变得非常简单。它也有很多功能,意味着你不必从头开始编写代码。
好处:如果你使用Serenity自动化框架,Rest-assured可以无缝地与它集成,这意味着你可以将你的UI和Rest测试全部合并到一个框架中,生成令人惊叹的报告。
用Java测试和验证REST服务比用Ruby和Groovy等动态语言要困难得多。
这是使用REST-Assured的另一个原因,因为它带来了在Java领域使用这些语言的简单性创建Rest-assured API是为了让您不必成为HTTP专家。如果你的团队主要由Java程序员组成,我强烈推荐Rest-Assured用于API测试。
SoapUI
SoapUI已经存在一段时间了。如果你的团队只进行API测试,并且主要由QA工程师(而不是开发人员)组成,那么SoapUI可能是您的团队的最佳选择。官方地址:https://www.soapui.org
SoapUI是一个专门用于API测试的全功能测试工具。不必从头开始创建解决方案,API允许您利用一个功能丰富的工具,该工具严格针对API测试。
如果出于某种原因需要创建自定义工作流或功能,可以使用Groovy在SoapUI中编写解决方案。
如果您的团队有复杂的API测试场景,并且由更多的QA/测试工程师组成,那么SoapUI是首先要尝试的工具。
JMeter
虽然JMeter是为负载测试而创建的,但是很多人也将它用于功能API测试。官方地址:https://jmeter.apache.org
JMeter包含了您需要用来帮助测试API的所有功能,以及一些可以用来增强您的API测试工作的额外特性。
例如,JMeter可以自动处理CSV文件,这允许您的团队为您的API测试快速创建惟一的参数值。它还与Jenkins集成,这意味着您可以在持续集成管道中包含API测试。
如果您计划创建API功能测试,并且希望在性能测试中使用它,为什么不一石二鸟地使用JMeter作为您的主要API测试解决方案呢?
上述三种工具,都是不需要编程开发或是对于个别情况才需要编程,但苦叶子一直推荐的方式就是:
测试即代码,用代码来解决问题!!!
很多新手以为代码难度过大,苦叶子以为其本质是:缺乏足够的练习