使用 Postman 进行 Trello API 自动化测试的完整指南

文章目录

  • 前言
  • 一、自动化测试是什么?
  • 二、比较自动化测试与手工测试
    • 1. 自动化测试
    • 2. 手工测试
  • 三、环境搭建
    • 1.创建Collection
    • 2.创建环境变量
    • 3.添加API请求
  • 四、设计测试用例
    • 1. API简单调用
    • 2. 获取所有emoji
    • 3. 创建一个新看板:
    • 4. 获得创建的看板信息
    • 5. 在看板中创建一个新的列表
    • 6. 获取创建的列表信息
  • 五、环境和变量的使用
  • 六、自动化测试和结果分析
    • 周期运行
    • CLI 运行
    • 使用 Newman 进行自动化测试
  • 总结


前言

在现代软件开发中,自动化测试已成为确保代码质量和稳定性的重要手段。特别是在API测试中,自动化测试可以快速验证API的正确性和可靠性。Postman 是一个强大的API测试工具,因其简单易用且功能强大而广受欢迎。本文将详细介绍如何使用 Postman 对 Trello API 进行自动化测试,从环境搭建到自动化测试执行和结果分析,帮助您更好地理解和应用这一工具

在这里插入图片描述


一、自动化测试是什么?

自动化测试是一种使用软件工具和脚本自动执行测试用例的方法,而不是手动执行。其主要目的是提高测试效率、减少人为错误、加快测试速度,以及在软件开发过程中及早发现问题。自动化测试通常用于回归测试、性能测试和负载测试等领域。

以下是自动化测试的一些关键概念:

  1. 测试脚本:自动化测试使用脚本来执行测试步骤和验证预期结果。这些脚本可以重复使用,节省时间和精力。

  2. 测试工具:有多种自动化测试工具可以帮助创建、管理和执行测试脚本,例如Selenium、Jest、Cypress等。

  3. 持续集成/持续交付 (CI/CD):自动化测试通常集成在CI/CD管道中,以便在代码每次更改后自动运行测试,确保代码的稳定性和质量。

  4. 测试覆盖率:自动化测试可以帮助提高代码的测试覆盖率,确保更多的代码路径得到测试。

  5. 优缺点:自动化测试可以大大提高效率,但编写和维护自动化测试脚本需要一定的时间和资源投入。

自动化测试是现代软件开发中不可或缺的一部分,有助于提高软件的质量和可靠性。


二、比较自动化测试与手工测试

1. 自动化测试

优点:

  1. 效率高:自动化测试可以快速执行大量测试用例,特别是在回归测试中表现出色。
  2. 可重复性强:测试脚本可以多次重复执行,确保结果一致。
  3. 覆盖面广:自动化测试可以更容易地覆盖更多的测试场景和数据组合。
  4. 持续集成支持:自动化测试可以集成到CI/CD管道中,实现自动化的测试和部署。
  5. 减少人为错误:避免手工操作中的疏忽或错误。

缺点:

  1. 初始成本高:编写和维护自动化测试脚本需要大量时间和资源,尤其是对于复杂的应用程序。
  2. 灵活性低:自动化测试脚本对于UI变化敏感,需要频繁维护。
    3 难以处理复杂的用户交互:对于需要复杂用户交互的测试场景,自动化测试可能难以实现或不可靠。
  3. 技术依赖:需要具备相关工具和编程语言的技能。

2. 手工测试

优点:

  1. 灵活性强:测试人员可以根据测试过程中的发现即时调整测试方案,适应各种变化。
  2. 适用性广:适用于探索性测试、用户体验测试以及需要人类判断的场景。
  3. 初始成本低:不需要编写脚本,只需具备基本的测试技能和理解能力。

缺点:

  1. 效率低:手工测试耗时长,特别是对于大量测试用例的执行。
  2. 可重复性差:手工测试的结果可能因不同的测试人员和执行时间而不同,难以保证一致性。
  3. 覆盖面有限:手工测试难以全面覆盖所有的测试场景和数据组合。
  4. 易出错:测试人员可能因疲劳或其他因素漏掉一些测试步骤或用例。

总结
自动化测试和手工测试各有优缺点,适用于不同的场景。在实际项目中,通常会结合两者使用:对于稳定、重复性高的测试用例,使用自动化测试;对于探索性测试或需要人类判断的场景,使用手工测试。这样可以最大化测试效率和测试覆盖率。


三、环境搭建

首先,我们需要在 Postman 中创建一个新的 Collection,并设置相关的环境变量,以便管理和组织API请求。

1.创建Collection

  • 打开 Postman,点击左侧栏中的 “Collections”。
  • 点击 “New Collection”,命名为 “Trello”。
    在这里插入图片描述

2.创建环境变量

  • 点击Trello这个collection,选择 “Variables”。
  • 点击 “Add” 创建一个新的环境,命名为 “Trello”。
  • 添加以下变量:
    Trello:Trello API 的基础URL,如 https://api.trello.com
    hjykey:您的 Trello API Key
    hjytoken:您的 Trello API Token
    在这里插入图片描述

3.添加API请求

  • 在 “Trello” Collection 中,依次添加以下六个API请求。
    在这里插入图片描述

四、设计测试用例

我们将使用 Trello 的公开API🚪来创建和测试一些基本操作。

在这里插入图片描述

1. API简单调用

  • 请求类型: GET
  • 请求URL: {{Trello}}/1/members/me/boards?key={{hjykey}}&token={{hjytoken}}
  • 测试脚本:
    在这里插入图片描述

2. 获取所有emoji

  • 请求类型: GET
  • 请求URL: {{Trello}}/1/emoji
  • 测试脚本:
    在这里插入图片描述

3. 创建一个新看板:

  • 请求类型: POST
  • 请求URL: {{Trello}}/1/boards/?name=postman测试看板&key={{hjykey}}&token={{hjytoken}}
  • 测试脚本:
    在这里插入图片描述

4. 获得创建的看板信息

  • 请求类型: GET
  • 请求URL: {{Trello}}/1/boards/{{boardId}}?key={{hjykey}}&token={{hjytoken}}
  • 测试脚本:
    在这里插入图片描述

5. 在看板中创建一个新的列表

  • 请求类型: POST
  • 请求URL: {{Trello}}/1/lists?name=待办列表&idBoard={{boardId}}&key={{hjykey}}&token={{hjytoken}}
  • 测试脚本:
    在这里插入图片描述

6. 获取创建的列表信息

  • 请求类型: GET
  • 请求URL: {{Trello}}/1/lists/{{listId}}?key={{hjykey}}&token={{hjytoken}}
  • 测试脚本:
    在这里插入图片描述

五、环境和变量的使用

在本测试中,我们使用了 Collection 变量和环境变量来存储和引用不同的 API 参数。这种方法不仅可以提高测试的可维护性,还能方便地在不同环境之间切换。

  • 存储变量:在创建看板和列表时,我们使用 pm.collectionVariables.set("boardId", jsonData.id); 等语句将生成的 boardIdlistId 存储到 Collection 变量中,以便在后续的测试中使用。

  • 使用变量:在后续的请求中,我们可以使用 {{boardId}}{{listId}} 变量来引用之前存储的值,确保数据的一致性和动态性。

六、自动化测试和结果分析

Postman 提供了多种自动化测试的方法,包括周期运行、CLI运行和使用Newman进行自动化测试。

周期运行

Postman 的集合运行器提供了周期性运行的功能。您可以右键点击集合,选择 “Run collection”,然后选择 “Schedule runs” 进行设置。可以为计划命名并设置运行周期,即使没有打开 Postman 应用,也能自动运行测试。其中可以设置计划名称与运行的周期次数,设置好了周期性运行可以等待到了下一个周期,也可以点击‘run now’立即执行。
在这里插入图片描述

CLI 运行

Postman 提供了 CLI 工具,可以通过命令行运行测试集合。右键点击集合,再点击Run collection,再选择Automate runs via CLI,使用CLI之前要先到官网下载,输入以下命令下载:

powershell.exe -NoProfile -InputFormat None -ExecutionPolicy AllSigned -Command "[System.Net.ServicePointManager]::SecurityProtocol = 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://dl-cli.pstmn.io/install/win64.ps1'))"

下载好了postman CLI之后,点击add APIKey,输入一个名字,选择插入,再复制内容到控制台运行即可
在这里插入图片描述
在这里插入图片描述

使用 Newman 进行自动化测试

Newman🚪 是 Postman 的 CLI 运行器,可以通过以下步骤使用:

  1. 安装 Newman:
npm install newman-reporter-htmlextra newman -g
  1. 导出 Collection:在 Postman 中,右键点击 Collection,选择 “Export” 并保存为 JSON 文件。
  2. 运行 Collection:打开命令行,输入:
# collection.json为你自己导出的json文件名字
newman run collection.json -r htmlextra --reporter-html-export htmlReport.html

Newman 将执行测试并生成一份 HTML 格式的报告
在这里插入图片描述


总结

Postman 是一个强大的API测试工具,通过其丰富的功能,可以有效地进行自动化测试。无论是简单的功能验证,还是复杂的集成测试,Postman 都能提供支持。希望这篇博客能帮助您了解并开始使用Postman进行自动化测试,提升您的测试效率和质量。如果您有任何问题或建议,欢迎在评论区留言讨论🌹

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3281629.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

四、GD32 MCU 常见外设介绍(14)

GD32 MCU内部提供了一个RTC(实时时钟)模块,通过RTC可以实现日历时钟、闹钟等功能。RTC也可以用于深度睡眠或待机模式的低功耗唤醒。不同系列的GD32 MCU在RTC设计和功能上有所区别,总体可以分为三大系列: (…

springboot美食网站—计算机毕业设计源码11574

摘 要 随着人们生活水平的提高,人们对美食的要求也越来越高,对各类美食信息需求越来越大。因此,结合计算机快速发展、普及,在此基础上制作一个页面简单、美观,功能实用的美食网站势在必行,满足用户分享美食的需求。 美…

关于Handler你不知道的事

提到Handler,我们都会想到可以用来在子线程给UI线程发送消息,常用来子线程刷新UI。 而往深了问,你一定还知道Handler会绑定到一个Looper,而每个Looper会和一个MessageQ关联,从而达到向指定线程发送消息的功能。除此之外…

【计算机视觉学习之CV2图像操作实战:红绿灯识别1】

红绿灯识别1 步骤 高斯模糊边缘提取膨胀腐蚀中值滤波再次膨胀霍夫圆环检测区域将图片从BGR格式转换为HSV格式设计颜色阈值中值滤波统计像素点数 import cv2 import numpy as np COLOERS {red: (0, 0, 255),green: (0, 255, 0),yellow: (0, 255, 255), } def detect_color(im…

探索Netty框架的核心构件

Netty是一个高性能、异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能、高可靠性的网络服务器和客户端程序。本文将深入探讨Netty框架的基本组件,帮助开发者更好地理解和使用这一强大的工具。 1. 事件循环(EventLoop)…

系统架构师--第1章计算机组成与体系结构-1.2 存储器系统

目录 1.2 存储器系统 1.2.1 主存储器 1.2.2 辅助存储器 1.2.3 Cache 存储器 (1)直接映像 (2)全相联映像 (3)组相联映像 1.2 存储器系统 存储器是用来存放程序和数据的部件,它是一个记忆装…

Vue - CSS基础学习

一、元素及属性 CSS 是为 web 内容添加样式的代码。 style标签 1.语法 1.除了选择器部分,每个规则集都应该包含在成对的大括号里({})。 2.在每个声明里要用冒号(:)将属性与属性值分隔开。 3.在每个规则集里要用分号…

Android Studio运行报错:module java.base dose not “opens java.io“ to unnamed module

今天第一次使用Android Studio运行一个安卓工程,报如图错误,应该是环境问题。 解决: 右上角的设置图标->settings->Buid,Execution,Deployment->Build Tools->Gradle->Gradle JDK->选择本地环境的java_home jdk(怎么安装…

SEQ 4. 转录本蛋白编码能力预测软件(CPAT)

简 介 深度转录组测序能够检测数千个新的转录本。这一发现大而“隐藏”的转录组重新激活了对能够快速区分编码和非编码 RNA 的方法的需求。在这里提出了一种新的无比对方法,编码潜在评估工具( CPAT) ,可以快速识别来自大量候选转录本的编码和非编码转…

公司里的IT是什么?

公司里的IT是什么? 文章目录 公司里的IT是什么?1、公司里的IT2、IT技术3、IT行业4、IT行业常见证书 如果对你有帮助,就点赞收藏把!(。・ω・。)ノ♡ 前段时间,在公…

【C语言】指针基础知识理解【续】

1. ⼆级指针 指针变量也是变量,是变量就有地址,那指针变量的地址存放在哪⾥?这就是 ⼆级指针 。 1.1 引入二级指针 由于一级指针已经很熟悉,这里就不再赘述,这里我们重点探讨二级指针 下面先简单使用一个二级指针看…

TPAMI 2024 | 全新框架!深度学习可解释度量学习!

TPAMI 2024 | 全新框架!深度学习可解释度量学习! DIML: Deep Interpretable Metric Learning via Structural Matching 题目:DIML: 通过结构匹配的深度可解释度量学习 作者:Wenliang Zhao, Yongming Rao, Jie Zhou , and Jiwen…

C++笔试强训10

文章目录 一、选择题1-5题6-10题 二、编程题题目一题目二 一、选择题 1-5题 前面做过很多次了,记住就好,不在赘述,选C。 内联函数经常使用的场景包括: 小型函数:当函数体非常小,只包含几条语句时&#xf…

【C++】模板的特化

文章目录 概念函数模板特化类模板特化全特化偏特化 概念 通常情况下,使用模板可以实现一些与类型无关的代码,但是有一些类型需要特殊处理,否则可能会得到一些错误的结果。 比如,在比较两个数的大小时,如果传入两个变量…

手动上电电路(电路收藏)

SW1按下 V1栅极对地 V1通 Vout给Mcu工作 GPIO2 高电平 V2通 SW1松开 V1栅极依然通过V2对地 维持V1通 Vout。再次按下SW1 GPIO1 对地 使Mcu收到中断 将GPIO2 输出低电平 V2关 松开SW1 V1栅极悬空 V1断开 Vout被截断

产品思维之什么是好的设计?

点击下方“JavaEdge”,选择“设为星标” 第一时间关注技术干货! 免责声明~ 任何文章不要过度深思! 万事万物都经不起审视,因为世上没有同样的成长环境,也没有同样的认知水平,更「没有适用于所有人的解决方案…

原生微信小程序wxml2canvas生成海报并包保存至本地

Wxml2Canvas是什么? Wxml2Canvas 是一个用于微信小程序开发的工具库,主要用途是将小程序页面的内容绘制成图片,以便生成海报或保存分享图片到相册等功能。具体用途包括: ①海报生成功能:允许开发者将当前页面的特定部…

【机器学习】决策边界的基本概念以及如何在逻辑回归中找到决策边界

引言 在机器学习中,决策边界是分类算法用来区分不同类别数据点的线、面或超平面。这些边界通常是模型的预测规则,用于将特征空间中的点分配到不同的类别。决策边界可以是线性的,也可以是非线性的,取决于数据的分布和所使用的分类算…

鸿蒙 HarmonyOS NEXT端云一体化开发-云数据库篇

一、概述 云数据库是一款基于对象模型的数据库,采用存储区、对象类型和对象三级结构。 数据模型 存储区 存储区是一个独立的数据存储区域,多个数据存储区之间相互独立,每个存储区拥有完全相同的对象类型定义 --类似于关系型数据库中的da…

ECMA6Script学习笔记(五)

【摘要】 本文是对自己学习ES6的学习笔记回顾,后面是概要: 本文介绍了ES6中的对象创建和拷贝方法。对象创建方面,ES6通过class关键字支持了面向对象的语法糖,包括属性设置、getter和setter方法、构造器、静态方法以及私有属性的定义。同时,展…