什么是Postman?
Postman 是一个可扩展的 API 测试工具,可快速集成到 CI/CD 管道中。它于2012年作为Abhinav Asthana的一个副项目开始,旨在简化测试和开发中的API工作流程。API代表应用程序编程接口,它允许软件应用程序通过API调用相互通信。
为什么使用Postman?
如今拥有超过400万用户,Postman软件已成为首选工具,原因如下:
1.可访问性-要使用Postman.工具,只需登录到自己的帐户,只要计算机上安装Postman应用程序,就可
以随时随地轻松访问文件。
2.使用集合-Postman允许用户为其Postman APl调用创建集合。每个集合都可以创建子文件夹和多个请
求。这有助于组织测试套件。
3.协作-可以导入或导出集合和环境,以便轻松共享文件。直接链接还可用于共享集合。
4.创建环境-拥有多个环境有助于减少重复的测试,因为一个人可以使用相同的集合,但适用于不同的
环境。这就是参数化将发生的地方,我们将在进一步的课程中讨论。
5.创建测试-可以将测试检查点(例如验证成功的HTTP响应状态)添加到每个Postman APli调用中,这有
助于确保测试覆盖率。
6.自动化测试-通过使用收集运行程序或Newman,可以在多次迭代中运行测试,从而节省重复测试的
时间。
7.调试-Postman控制台有助于检查已检索到的数据,从而轻松调试测试。
8.持续集成-凭借其支持持续集成的能力,可以维护开发实践。
如何下载和安装Postman
作为一个开源工具,Postman可以轻松下载。以下是安装步骤:
步骤 1)下载Postman
转到 Download Postman | Get Started for Free 并在Mac,Windows或Linux中选择所需的平台。单击“下载”。
步骤 2)单击“运行
您的下载正在进行中”消息现在应显示在“应用程序”页面上。Postman下载完成后,单击“运行”。
步骤 3) Postman安装开始
等待一段时间以完成Postman的安装。
步骤 4)注册Postman帐户
在下一个窗口中,注册Postman帐户
注意:有两种方法可以注册Postman帐户。一种是创建自己的Postman帐户,另一种是使用Google帐户。虽然Postman允许用户在不登录的情况下使用该工具,但注册可以确保您的收藏被保存并可供以后使用。
步骤 5) 单击“保存我的首选项
”选择所需的工作区工具,然后单击“保存我的首选项”
步骤 6) 祝贺!
您将看到启动屏幕
如何使用 Postman 执行 API
下面是Postman工作区。让我们一起探索如何使用Postman和Postman工具的不同功能的分步过程!
- 新建 – 您将在此处创建新的请求、集合或环境。
- 导入 – 用于导入集合或环境。有一些选项,例如从文件,文件夹,链接或粘贴原始文本导入。
- 运行器 – 可以通过收集运行程序执行自动化测试。这将在下一课中进一步讨论。
- 打开新建 - 通过单击此按钮打开新选项卡,Postman窗口或运行器窗口。
- 我的工作区 – 您可以单独或作为团队创建新工作区。
- 邀请 – 通过邀请团队成员在工作区上进行协作。
- 历史记录 – 您发送的过去请求将显示在“历史记录”中。这样可以轻松跟踪您已完成的操作。
- 集合 – 通过创建集合来组织测试套件。每个集合可以有子文件夹和多个请求。也可以复制请求或文件夹。
- “请求”选项卡 – 显示您正在处理的请求的标题。默认情况下,对于没有标题的请求,将显示“无标题请求”。
- HTTP请求 - 单击此按钮将显示不同请求的下拉列表,例如GET,POST,COPY,DELETE等。在Postman API测试中,最常用的请求是GET和POST。
- 请求 URL – 也称为终结点,可在其中标识指向 API 将与之通信的链接。
- 保存 – 如果请求有更改,则必须单击“保存”,以便新更改不会丢失或覆盖。
- 参数 - 这是您将编写请求所需的参数(例如键值)的地方。
- 授权 – 为了访问 API,需要适当的授权。它可以是用户名和密码,持有者令牌等形式。
- 标头 – 您可以根据组织的需要设置标头,例如内容类型 JSON。
- 正文 - 这是可以在POST请求中常用的请求中自定义详细信息的地方。
- 预请求脚本 – 这些是将在请求之前执行的脚本。通常,使用设置环境的预请求脚本来确保在正确的环境中运行测试。
- 测试 – 这些是在请求期间执行的脚本。在设置检查点以验证响应状态是否正常,检索到的数据是否符合预期以及其他测试时,进行测试非常重要。
使用 GET 请求
获取请求用于从给定 URL 检索信息。不会对终结点进行任何更改。
我们将对这个Postman教程中的所有示例使用以下URL
https://jsonplaceholder.typicode.com/users
在工作区中
- 将 HTTP 请求设置为 GET。
- 在请求 URL 字段中,输入链接
- 点击“发送”图标
- 您将看到 200 OK 消息
- 正文中应有 10 个用户结果,指示测试已成功运行。
*注意:在某些情况下,“获取Postman员”请求可能不成功。这可能是由于请求 URL 无效或需要身份验证。
处理开机自检请求
发布请求与 Get 请求不同,因为用户将数据添加到终结点时会进行数据操作。使用上一教程 Get 请求中的相同数据,现在让我们添加自己的用户。
步骤 1)单击新选项卡以创建新请求。
步骤 2)在新选项卡中
- 将 HTTP 请求设置为 POST。
- 在请求网址中输入相同的链接:https://jsonplaceholder.typicode.com/users
- 切换到“正文”选项卡
步骤 3)在身体中,
- 点击原始
- 选择 JSON
步骤 4)仅复制并粘贴上一个 get 请求中的一个用户结果,如下所示。确保已使用成对的大括号和方括号正确复制代码。将 id 更改为 11,并将 name 更改为任何所需的名称。您还可以更改其他详细信息,例如地址。
[
{
"id": 11,
"name": "Krishna Rungta",
"username": "Bret",
"email": "[email protected]",
"address": {
"street": "Kulas Light",
"suite": "Apt. 556",
"city": "Gwenborough",
"zipcode": "92998-3874",
"geo": {
"lat": "-37.3159",
"lng": "81.1496"
}
},
"phone": "1-770-736-8031 x56442",
"website": "hildegard.org",
"company": {
"name": "Romaguera-Crona",
"catchPhrase": "Multi-layered client-server neural-net",
"bs": "harness real-time e-markets"
}
}
]
*注意: 在线发布请求应具有正确的格式,以确保将创建请求的数据。最好使用 Get First 检查请求的 JSON 格式。您可以使用 JSON Formatter & Validator
步骤 5)下一个
- 单击“发送”。
- 状态:201 已创建应显示
- 发布的数据显示在正文中。
如何参数化请求
数据参数化是Postman最有用的功能,之一。您可以使用带有参数的变量,而不是使用具有不同数据的相同请
求。这些数据可以来自数据文件或环境变量。参数化有助于避免重复相同的测试,并且迭代可用于自动化
测试。
参数是通过使用双花括号创建的:{sample}。让我们看一下在上一个请求中使用参数的示例:
现在,让我们创建一个参数化 get 请求。
步骤 1)
- 将 HTTP 请求设置为 GET
- 输入此链接:https://jsonplaceholder.typicode.com/users。将链接的第一部分替换为参数,如 { {url}}。请求 url 现在应为 { {url}}/users。
- 单击“发送”。
应该没有响应,因为我们没有设置参数的源。
步骤 2) 要使用参数,您需要设置环境
- 单击眼睛图标
- 单击“编辑”将变量设置为可在所有集合中使用的全局环境。
步骤 3)在变量中,
- 将名称设置为 https://jsonplaceholder.typicode.com
- 点击保存。
步骤 4) 单击关闭,如果您看到下一个屏幕
步骤 5) 返回您的获取请求,然后点击发送。现在应该有您的请求的结果。
*注意:始终确保参数具有源(如环境变量或数据文件),以避免错误。
如何创建Postman测试
Postman Tests,是添加到清求中的JavaScript代码,可帮助您验证结果,例如成功或失败状态,预期结果的比
较等。它通常从pm.test开始。它可以与其他工具中可用的断言,验证命令进行比较。
让我们使用Postman对上一课的参数化请求进行一些基本的API测试.。
步骤1)转到上一教程中的GET用户请求。
1.切换到“测试”选项卡。右侧是代码段代码。
2.在代码段部分,点击“状态代码:代码为200”。
窗格已自动填充
步骤 2) 现在,单击“发送”。现在应显示测试结果。
步骤 3) 返回到测试选项卡,让我们添加另一个测试。这次我们将预期结果与实际结果进行比较。
在代码段部分,单击“响应正文:JSON 值检查”。我们将检查Leanne Graham是否具有userid 1。
步骤 4)
- 将代码中的“您的测试名称”替换为“检查id1的用户是否是Leanne Graham”,以便测试名称准确指定我们要测试的内容。
- 将 jsonData.value 替换为 jsonData[0].name。若要获取路径,请检查“较早获取结果”中的正文。由于 Leanne Graham 是 userid 1,因此 jsonData 位于第一个结果中,应以 0 开头。如果要获得第二个结果,请使用 jsonData[1] 等获得后续结果。
- 在 eql 中,输入“Leanne Graham”
pm.test("Check if user with id1 is Leanne Graham", function () { var jsonData = pm.response.json(); pm.expect(jsonData[0].name).to.eql("Leanne Graham"); });
步骤 5) 单击“发送”。现在,您的请求应该有两个通过的测试结果。
*注意:可以在Postman中创建不同类型的测试。尝试探索该工具,看看哪些测试适合您的需求。
什么是Postman API测试?
Postman是一个用于API测试的应用程序。它是一个HTTP客户端,它利用图形用户界面测试HTTP请求,通过该界面,我们获得了需要随后验证的不同类型的响应。
方法
Postman提供了许多端点交互方法。以下是一些最常用的功能,包括它们的功能:
- GET:获取信息
- POST:添加信息
- PUT:替换信息
- PUT:补丁、更新某些信息
- DELETE:删除信息
响应代码
当使用Postman测试API时,我们通常会获得不同的响应代码。一些最常见的包括:
- 100 系列>时间响应,例如“102 处理”。
- 200 系列>响应,其中客户端接受请求,服务器成功处理它,例如,“200 Ok”。
- 300 系列>与 URL 重定向相关的响应,例如,“301 永久移动”。
- 400 系列>客户端错误响应,例如“400 错误请求”。
- 500 系列>服务器错误响应,例如,“500 内部服务器错误”。
收集
Postman提供了对不同请求进行分组的可能性。此功能称为“集合”,可帮助组织测试。
这些集合是存储请求的文件夹,可以按照团队喜欢的任何方式进行结构化。也可以导出- 导入它们。
环境
Postman还允许我们通过生成/使用变量来创建不同的环境;例如,针对不同测试环境(dev-QA)的URL变量,使我们能够使用现有请求在不同环境中执行测试。
Postman API - 最后的想法
这是对使用Postman时的方法和API测试错误的快速总结,并快速了解了执行这些测试时其优势。后者包括通过用户友好的图形界面收集和创建环境。使用Postman可以帮助优化测试时间,特别是在使用敏捷方法时。
关键要点
- Postman是一个应用程序,允许我们利用图形用户界面测试API。
- Postman的一些优势包括收集功能和创建不同测试环境的可能性。
- Postman是一个用户友好的工具,可以帮助我们在执行测试时优化时间。
如何创建集合
集合在组织测试套件方面发挥着重要作用。它可以导入和导出,从而可以在团队之间轻松共享集合。在本教程中,我们将学习如何创建和执行集合。
让我们从创建集合开始:
步骤 1) 单击页面左上角的“新建”按钮。
步骤 2)选择“集合”。创建集合窗口应该会弹出。
步骤 3) 输入所需的集合名称和描述,然后单击“创建”。现在应该创建一个集合。
步骤 4)返回到上一个 Get 请求。点击保存
步骤 5)
- 选择Postman测试集合。
- 单击“保存到Postman测试集合”
步骤 6)Postman 测试集合现在应包含一个请求。
步骤 7)对上一个 Post 请求重复步骤 4-5,以便收集现在有两个请求。
如何使用收集运行程序运行集合
有两种方法可以运行集合,即收集运行器和Newman。让我们从在收集运行程序中执行集合开始。
步骤 1)单击页面顶部“导入”按钮旁边的“运行器”按钮。
步骤 2)收集运行程序页面应如下所示。以下是各个领域的描述
步骤 3)通过设置以下内容来运行您的Postman测试集合:
- 选择 Postman 测试集合 - 将迭代设置为 3
- 将延迟设置为 2500 ms
- 点击运行Postman测试...按钮
步骤 4)单击“运行”按钮后,应显示“运行结果”页。根据延迟,您应该会在测试执行时看到它们。
- 测试完成后,您可以看到测试状态(如果为“通过”或“失败”)以及每次迭代的结果。
- 您会看到“获取请求”的“通过”状态
- 由于我们没有对Post进行任何测试,因此应该有一条消息,指出请求没有任何测试。
您可以看到请求中有测试是多么重要,以便您可以在成功时验证HTTP请求状态并创建或检索数据。
资料:
Postman 教程:如何安装和使用 Postman 进行 API 测试 (guru99.com)https://www.guru99.com/postman-tutorial.html#3