负载测试是任何软件 应用程序或 REST API 开发过程的关键部分。 它可以帮助您了解特定程序的功能,以确保最终与真实用户会面时,该程序可以正常运行。 这些测试使开发人员和公司可以识别任何瓶颈。 此外,它节省了时间,并确保了以后额外使用的货币资源(特别是使用Selenium等负载测试工具)。 同样,API(应用程序编程 接口)测试是一种软件测试,用于确定新开发的应用程序在可靠性、性能、操作和安全性方面是否符合预期。

但是,在关注REST API(一种API)时,这允许两个或多个系统通过HTTP(与网络浏览器和服务器非常相似)进行通信,以分析响应时间每一个请求由用户制作。 所以,如果你想了解更多关于RESE API自动化测试与一个简短的教程的帮助下,潜入! 但是在继续学习本教程之前,了解API,REST,REST API和自动化测试的全部内容非常重要。 因此,让我们逐一简要介绍它们。

什么是 API?

想知道什么是API? 好吧,简单地说,API是一组帮助程序相互通信的规则。 开发人员在服务器上创建API,使客户端可以与它们对话。 无论典型的消费者是否知道,API都会在他们每天使用的 服务和 应用程序中使用。 从查看天气预报和登录您的社交帐户到通过PayPal支付物品,API都在幕后,致力于为您提供更加个性化,互联和安全的体验。

由于这一事实,对API进行全面测试至关重要,因为它们在与其他应用程序和集成以及用户体验的开发中起着重要作用。 他们的表现可以成就或破坏机会。

什么是REST?

REST 代表表示状态传输。 它是一种具有规则(约束)的软件体系结构样式,开发人员必须遵循这些规则(约束)。 尽管如此,最重要的约束之一是,只要给出命令,Web应用程序就应该能够传递数据(信息)。

什么是REST API?

以上所有信息使我们可以很好地使用REST API。 让我们通过一些例子来更好地理解这个术语。

想象一下,你正试图找到一家提供廉价机票的航空公司。 您在搜索引擎中输入您的请求,您将获得一个完整的公司列表。 同样,当您尝试 在YouTube上搜索视频时,您只需在搜索字段中输入关键字或名称,然后按回车键即可。 接下来,您会看到一长串相关视频。

不仅如此,当您打开Google地图并查找要访问的特定地点时,还可以看到附近的便利设施,例如餐馆和通勤选项。 之所以会这样,是因为两家公司都公开了自己的API,而REST API的工作方式几乎类似。 您更喜欢使用HTTP(或简单来说,互联网)请求某些数据,并且您 从您请求的公司收到信息或结果。

尽管 REST API 在几乎每个领域都发挥着重要作用,但电子商务行业一直在 广泛使用这项技术,因为它通过处理多个用户的命令(请求)和返回不同的数据格式来帮助企业。 因此,简言之,从大型商业集团到普通个人,它为整个超级媒体提供服务,甚至包括试图上传图像、编辑个人资料信息或只是下载文件的人。

执行REST API测试

有两种测试REST API的方法:

  1. 手动测试
  2. 自动化测试

但是, 本教程适用于自动化测试。 另外,要理解结果,还需要理解一些重要的事情,包括方法和状态代码。

REST API自动化测试的HTTP方法

REST API使用五种HTTP方法来请求命令:

得到:检索特定URL上的信息。

:更新先前的资源或在特定的URL创建新的信息。

补丁:用于部分更新。

开机自检:用于开发新实体。 此外,它还用于向服务器发送信息,例如上传文件,客户信息等。

删除:删除特定URL上的所有当前表示。

HTTP状态码

状态码是服务器对客户请求的响应。 它们分为五类:

  1. 1xx(100 – 199):响应仅供参考
  2. 2xx(200 – 299):确保成功响应
  3. 3xx(300 – 399):您需要采取进一步的措施来满足请求
  4. 4xx (400 – 499):语法错误,请求无法完成
  5. 5xx (500 – 599): 服务器 完全无法完成请求

这些代码有助于解释结果。 因此,如果REST API自动化测试结果在2xx范围之间,则意味着该应用程序的功能运行正常。 对于大多数普通的日常互联网用户来说,状态代码永远不会成为他们甚至会遇到或去寻找的东西。 对于 1xx、2xx 和 3xx 状态代码,这些实际上不被视为错误,而是信息性消息,并且不一定会影响用户体验。

但是,当我们开始进入 4xx 和 5xx 状态代码时,这些被视为错误消息,当出现问题时,用户在浏览 ABI 时将面临错误消息。 4xx 状态代码错误消息通常发生在客户端/浏览器级别时。 5xx 状态代码错误消息会导致服务器级别的错误。 虽然看到错误从来都不是一件好事,但这些错误对于尽快补救尤其重要,因为它们表明存在严重 问题,并将极大地影响用户满意度

有关 HTTP 状态代码的更多信息,以及所有不同代码和错误消息的完整列表,请阅读我们知识库上的 HTTP 状态代码列表 文章。

带有Postman API测试工具的REST API测试教程

以下教程适用于使用Postman进行REST API自动化测试。 Postman 是一个受欢迎的 API 客户端,允许开发人员和团队测试、共享、创建、协作和记录 API 开发过程。 客户端非常适合创建和保存复杂的 HTTP/s 请求及其响应。 邮递员可以下载为Chrome扩展程序,也可以访问官方网站下载该程序。

测试方案:每周状态码

这是一个REST API自动化测试示例场景,用于测试以下所有方法:状态码每周查找网站的状态码。 让我们开始吧!

测试GET请求

注意:点击此链接后( https://reqres.in/api/users?page=2 ),您会看到JSON代码。

但是关于Postman的最好的事情是,如果您拥有API URL,则只需将其粘贴即可获取状态代码,并且相同的规则适用于所有其他方法。

测试教程:启动Postman后,选择GET方法并复制GET request链接( https://reqres.in/api/users?page=2 ),然后将其粘贴到“输入请求网址”字段中。 完成后,点击“发送”以查看“状态”。

结果:您可以看到状态为“ 200 OK”。

邮递员界面

解释: “ OK”表示GET请求正在正常运行,因为状态码正好是200。

测试POST请求

步骤1:点击“新标签”,然后从下拉菜单中选择“发布”。

Postman Post Request Screen

第2步:复制并粘贴POST请求网址( https://reqres.in/api/users )中的“输入请求网址”字段,然后点击“发送”按钮。

结果:状态代码为“已创建200”。

Status Code POST Request 201

解释:”已创建”表示 POST 请求已成功,并且已生成新资源。

测试PUT请求

步骤1:打开“新建标签”,然后从选项中选择“放置”。

Postman PUT Request Screen

第 2 步: 将 PUT 请求 URL(https://reqres.in/api/users/2)复制并粘贴到”输入请求 URL”字段中,然后单击”发送”。

结果:状态为“ 200 OK”。

Status Code PUT Request 200

解释:PUT请求正在运行。

测试PATCH请求

步骤1 :在“新标签”中选择“ PATCH”。

Postman PATCH Request Screen

第 2 步: 将 PATCH 请求网址粘贴在字段中,然后单击”发送”。

结果: 状态代码为 “200 确定”。

Status Code PATCH Request 200

解释:PATCH请求正常运行。

测试删除请求

步骤1 :创建一个“新标签页”,这次从菜单中选择“删除”。

Postman DELETE Request Screen

第 2 步:在字段中输入 DeletE 请求 URL,然后再次单击”发送”按钮。

结果:您可以看到状态为”204 无内容”。

邮递员界面
解释:由于该链接没有要删除的内容,因此,我们收到“ 204”响应。 但是,如果URL上有任何内容,则肯定会用此命令将其删除,因为状态码在典型范围内。

使用REST的REST API测试教程

REST Assured 是一个 用于测试 RESTful API 的 Java 库。 它被广泛用于测试基于JSON和XML的Web应用程序。 此外,它完全支持所有方法,包括GET,PUT,POST,PATCH和DELETE。

尽管如此,仍然需要在系统中安装Java,Maven,TestNG和IDE(IntelliJ,Eclipse等)才能运行测试。

步骤1 :安装Java

第2步:下载一个IDE(Eclipse)

第三步:安装Maven并将其与Eclipse链接

第四步:首先通过将依赖项添加到“ pom.xml”来创建一个Maven项目。 之后,创建测试脚本,确保进行验证,然后运行它。

保证Maven依赖

Maven dependency

TestNG Maven依赖

Maven dependency TestNG

假设您已经安装了所有工具,让我们测试相同的GET请求,您在Postman中看到,在Eclipse上使用REST Assured来找出结果。 如果需要,可以应用相同的方法来测试其他请求。

因此,请针对GET请求执行以下步骤:

步骤1 :打开“ Eclipse”。

第2步:创建一个新的“ Java程序包”并命名。

第三步:创建一个新的“ Java类”并命名。 例如,”获取数据”。

第四步:现在复制或编写下面提到的相同代码:

1 package getRequest;

2

3 import org.testing.Assert;

4

5 import io.restassured.RestAssured;

6 import io.restassured.response.Response;

7 

8 public class GetData

9 {

10

11 @Test

12 public void testResponsecode()

13 {

14

15 

16 Response resp=RestAssured.get("https://reqres.in/api/users?page=2");

17

18 int code=resp.getStatusCode();

19 

20 System.out.printin(" Status code is "+code);

21

22 Assert.assertEquals(code, 200);

23

24 }

25

26

27 }

28

它看起来应该像这样:

GetData Java

第5步:现在,右键单击代码附近,将鼠标悬停在“运行方式”上,然后单击“ TestNG”。

运行方式>测试NG

结果与解释:如您所见,状态代码为200,并且已“通过”测试。

TestNG Passed

结论:REST API自动化测试教程

REST ABI 允许两个或两个以上的应用程序相互通信,并允许用户命令程序以获得预期的结果。 有多种测试REST API的方法,但是最建议的过程是通过自动化测试。 虽然有一些著名的 REST API 测试 工具,邮递员和放心目前是聚光灯下。 在本教程中,我们已经测试了两个接口上的一些请求并共享了结果。 不出所料,两个平台都显示出相似的结果。 但是,与Postman相比,使用REST Assured进行REST API自动化测试更为可靠。 但这需要专业的开发人员。

尽管这些 API 开发 工具很棒,但为了正确加载测试您的 API,您需要一个提供扩展性能测试的功能和特性的解决方案。 如果您使用 Postman 实现 API 功能,并希望 针对您的 API 执行负载测试以确定负载下的行为,LoadView 平台可以提供帮助。 详细了解如何使用 Postman 进行 API 测试。 如果您对了解更多信息感到好奇,请随时 与我们的团队联系

在 LoadView,我们的负载测试专家团队可以帮助您充分利用负载测试预算,我们提供一套出色的工具,使该过程变得简单。 不要让负载测试事后考虑。 使用 LoadView,您将能够运行各种测试,并轻松地将负载测试集成到您的开发过程中,访问有价值的数据,将数据转化为可操作的见解,并为用户改进您的网站和应用程序。

使用我们的一体化负载测试解决方案节省自己的时间、金钱和压力,这样您就可以投入更多时间来为用户显著改进您的网站和应用程序。 为您的开发团队提供终极负载测试资源,并看到性能提高、正常运行时间更长、用户体验更好甚至增加收入的结果。 一个快速运行、一致的网站让您的企业在竞争中脱颖而出。 开始您的 LoadView 试用版 并获得最多 5 次免费负载测试。