class="hljs-ln-code"> class="hljs-ln-line">pm.test("Status code is 200", function () {
  • class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="3"> class="hljs-ln-code"> class="hljs-ln-line"> pm.response.to.have.status(200);
  • class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="4"> class="hljs-ln-code"> class="hljs-ln-line">});
  • class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="5"> class="hljs-ln-code"> class="hljs-ln-line">
  • class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="6"> class="hljs-ln-code"> class="hljs-ln-line">// 测试响应体中是否包含特定的数据
  • class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="7"> class="hljs-ln-code"> class="hljs-ln-line">pm.test("Body matches string", function () {
  • class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="8"> class="hljs-ln-code"> class="hljs-ln-line"> pm.expect(pm.response.text()).to.include("some expected string");
  • class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="9"> class="hljs-ln-code"> class="hljs-ln-line">});
  • class="hljs-button signin active add_def" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}" onclick="hljs.signin(event)">

    3.2.2 预请求和断言脚本的编写和执行

    Postman中的测试脚本通常包含预请求脚本(Pre-request Scripts)和测试脚本(Tests)两个部分:

    1. class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="1"> class="hljs-ln-code"> class="hljs-ln-line">// 设置请求头中的Authorization字段
    2. class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="2"> class="hljs-ln-code"> class="hljs-ln-line">pm.request.headers.add({
    3. class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="3"> class="hljs-ln-code"> class="hljs-ln-line"> key: "Authorization",
    4. class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="4"> class="hljs-ln-code"> class="hljs-ln-line"> value: "Bearer " + pm.environment.get("token")
    5. class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="5"> class="hljs-ln-code"> class="hljs-ln-line">});
    class="hljs-button signin active add_def" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}" onclick="hljs.signin(event)">
    1. class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="1"> class="hljs-ln-code"> class="hljs-ln-line">// 验证响应体中的特定字段存在
    2. class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="2"> class="hljs-ln-code"> class="hljs-ln-line">pm.test("Field 'message' should be present in response", function () {
    3. class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="3"> class="hljs-ln-code"> class="hljs-ln-line"> var jsonData = pm.response.json();
    4. class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="4"> class="hljs-ln-code"> class="hljs-ln-line"> pm.expect(jsonData).to.have.property('message');
    5. class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="5"> class="hljs-ln-code"> class="hljs-ln-line">});
    class="hljs-button signin active add_def" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}" onclick="hljs.signin(event)">

    通过编写测试脚本,开发者可以自动化测试过程,确保API的响应符合预期。这不仅加快了测试流程,还提高了测试的准确性和可靠性。

    此外,Postman的测试脚本非常灵活,支持多种JavaScript语法和库,这意味着开发者可以编写复杂的逻辑来进行深入的测试。利用Postman测试脚本,可以实现从简单的响应验证到复杂的接口逻辑测试,让API测试变得轻而易举。

    在使用测试脚本时,重要的是要有明确的测试目标和计划。合理地编写测试用例,可以确保API的质量,并提高整个开发流程的效率。

    4. Postman的请求组织与管理

    在高效地使用Postman的过程中,组织和管理请求是核心环节之一。本章节将深入介绍如何在Postman中创建和管理请求集合,以及设置和应用环境变量,从而增强工作流的效率和可维护性。

    4.1 请求的创建与管理

    Postman中的“集合”是组织请求的强大工具,它可以将多个请求归纳在一起,便于管理、测试和共享。每个集合可以代表一个特定的API端点集合,或者特定的业务流程。

    4.1.1 创建请求集合

    创建一个请求集合非常简单,通过以下步骤即可完成:

    1. 打开Postman应用程序。
    2. 点击侧边栏的“Collections”按钮。
    3. 点击“+”号按钮,选择“Create Collection”。
    4. 在弹出的对话框中输入集合名称,并可选择是否添加描述。
    5. 点击“Save”按钮保存新的请求集合。

    这个过程中,可以简单地将请求拖拽到集合中,或者使用“Save”按钮旁边的下拉菜单,选择“Save all requests”将当前工作区中的所有请求保存到集合中。

    4.1.2 管理请求集合

    管理请求集合意味着能够修改集合名称和描述、删除集合、重排集合内的请求顺序,以及复制集合等。这些操作都旨在帮助用户维护和优化测试工作流。

    此外,可以通过权限设置来控制团队成员对集合的访问权限,以实现团队合作。

    4.2 环境变量的设置

    在API测试中,环境变量非常关键。它们允许我们为不同环境(如开发、测试、生产)存储不同的配置值,从而使测试过程更加灵活和可重用。

    4.2.1 创建环境变量

    创建环境变量的步骤如下:

    1. 点击侧边栏的“Environments”按钮。
    2. 点击“+”号按钮,选择“Add”来创建新的环境。
    3. 在弹出的对话框中输入环境名称,并为每个需要的变量设置名称和初始值。
    4. 点击“Add”保存环境变量。

    环境变量创建完成后,可以在Postman的请求中使用 {{variableName}} 的方式引用变量值。

    4.2.2 环境变量的应用

    应用环境变量可以使API测试更加灵活,改变环境时不需要修改每个请求。例如,可以设置一个变量 {{URL}} ,在不同的环境中它的值可以是 localhost staging.example.com 或者 production.example.com

    在请求中使用环境变量的例子:

    假设有一个GET请求需要访问不同的API端点,可以在请求的URL中使用环境变量 {{URL}}/api/items 。当在不同的环境变量间切换时(例如从开发环境切换到生产环境),只需要更改环境变量 URL 的值,即可自动更新请求URL。

    为了更好地理解环境变量的管理和应用,下面展示一个表格和代码块来展示环境变量的设置与使用。

    表格:环境变量示例

    | 变量名称 | 变量值 | 说明 | |----------|----------|----------------------| | URL | localhost | 开发环境的API主机地址 | | API_KEY | secretkey | API认证使用的密钥 |

    代码块:使用环境变量的请求示例

    1. class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="1"> class="hljs-ln-code"> class="hljs-ln-line">GET {{URL}}/api/items
    2. class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="2"> class="hljs-ln-code"> class="hljs-ln-line">Authorization: Bearer {{API_KEY}}
    class="hljs-button signin active add_def" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}" onclick="hljs.signin(event)">

    在上面的示例中,如果环境变量 URL 被设置为 localhost API_KEY 被设置为 secretkey ,那么实际发送的请求将是:

    1. class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="1"> class="hljs-ln-code"> class="hljs-ln-line">GET http://localhost/api/items
    2. class="hljs-ln-numbers"> class="hljs-ln-line hljs-ln-n" data-line-number="2"> class="hljs-ln-code"> class="hljs-ln-line">Authorization: Bearer secretkey
    class="hljs-button signin active add_def" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}" onclick="hljs.signin(event)">

    通过这样的设置,就可以在不同的环境之间无缝切换,而无需更改请求的主体内容。同时,可以在Postman中快速切换环境,例如点击侧边栏“Environments”面板中的环境名称,以实时更改所有使用该环境变量的请求配置。

    此外,环境变量还可以用于设置Postman的全局变量、局部变量,以及与外部工具如Newman集成时使用。

    至此,第四章介绍了如何在Postman中创建和管理请求集合,以及设置和应用环境变量。这些功能让Postman成为一个更加强大和灵活的API测试工具。接下来的章节将深入探讨Postman的高级功能,包括自动化测试、监控、实时同步、文档生成以及团队协作。

    5. Postman的高级功能

    5.1 自动化测试与监控

    Postman作为API开发和测试的重要工具,不仅仅止步于手动测试,它也提供了强大的自动化测试与监控功能。

    5.1.1 使用Newman工具进行自动化测试

    Newman是Postman的命令行集成工具,可以运行Postman集合并生成测试报告。通过集成到持续集成(CI)流程中,可以自动化API测试。

    bash npm install -g newman

    bash newman run .json -r html,junit

    这条命令不仅会运行集合,还会生成HTML和Junit格式的测试报告。

    5.1.2 API性能监控

    监控API的性能是确保服务质量的关键一环。Postman允许你设置监控,以便定期检查API的状态和性能。

    5.2 实时同步与文档

    为了在团队成员之间保持协作和更新,Postman提供实时同步和文档生成功能。

    5.2.1 跨设备同步请求集合

    Postman允许用户在不同设备间同步他们的请求集合。

    5.2.2 生成API文档

    API文档是协作的关键。Postman提供了生成详细文档的功能,方便开发者和团队成员理解和使用API。

    5.3 协作功能

    Postman通过一系列协作工具加强了团队间的合作。

    5.3.1 团队协作

    在Postman中创建团队,并邀请成员加入,这样团队成员就可以在一个平台上共享集合。

    5.3.2 版本控制

    为了跟踪集合的变化,Postman提供了版本控制的功能。

    通过这些高级功能,Postman不仅仅是一个API测试工具,它还为团队协作、API管理和自动化测试提供了强大的支持。

    本文还有配套的精品资源,点击获取 menu-r.4af5f7ec.gif

    简介:Postman是一款流行的API测试工具,适用于Mac OS 10.8及以上版本。它提供了直观的界面和丰富的功能,包括创建和发送HTTP请求、自动化测试、集合管理、环境变量配置和文档生成等。Postman帮助开发和测试团队高效地进行接口调试和协作,无需安装过程,直接运行即可使用。

    本文还有配套的精品资源,点击获取 menu-r.4af5f7ec.gif

    data-report-view="{"mod":"1585297308_001","spm":"1001.2101.3001.6548","dest":"https://blog.csdn.net/weixin_42610010/article/details/144381568","extend1":"pc","ab":"new"}">>
    注:本文转载自blog.csdn.net的芥子纳须弥1116的文章"https://blog.csdn.net/weixin_42610010/article/details/144381568"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
    复制链接

    评论记录:

    未查询到任何数据!