深入理解接口测试:实用指南与最佳实践(三)API文档解析及编写测试用例

news2024/11/13 15:25:26

在这里插## 标题入图片描述

您好,我是程序员小羊!

前言

这一阶段是接口测试的学习,我们接下来的讲解都是使用Postman这款工具,当然呢Postman是现在一款非常流行的接口调试工具,它使用简单,而且功能也很强大。不仅测试人员会使用,开发人员也会 经常使用。这节课是Postman分析的请求和响应数据,完成ihrm系统指定接口的API文档解析掌握接口测试用例设计方法,能独立完成ihrm系统登录/员工管理相关接口用例设计,后期讲解大概分三部分进行讲解:
1、根据接口API文档编写接口测试用例
2、使用Postman工具进行接口测试,并能够对大量接口用例进行管理、对接口响应结果进行断言、处理多接口的依赖及生成测试报告
3、使用Python+Requests封装的接口测试框架,实现接口对象封装、测试用例编写、测试数据管理及生成测试报告

先进入正题之前,我们先了解接口测试的相关的知识,如测试流程…

一、接口测试流程


  1. 需求分析(产品经理的需求文档)
  2. 接口文档解析(开发编写的 接口API文档)
  3. 设计 接口测试用例(编写 Excel 表格形式的⽤例)
  4. 准备接口测试脚本 (设计测试用例)
    postman 工具 生成脚本
    python 代码 编写脚本
  5. 执行测试用例,跟踪缺陷
  6. 生成 接口测试报告
  7. 接口自动化持续集成(可选)

在这里插入图片描述

二、什么是接口文档?

接口文档:又称为API文档,一般是由后端开发人员所编写的,用来描述系统所提供接口信息的文档。 大家都根据这个接口文档进行开发,并需要一直维护和遵守。
作用:
协同:团队⼈员⼯作协同配合
约束:项目更新修改同步维护

三、为什么要写接口文档?

  1. 能够让前端开发与后台开发人员更好的配合,提高工作效率。(有一个统一参考的文件)
  2. 项目迭代或者项目人员更迭时,方便后期人员查看和维护
  3. 方便测试人员进行接口测试

四、为什么要解析接口文档

通过分析接口文档,熟悉接口信息。
通过接口文档获取,接口测试所使用的 请求数据预期结果

解析的核心目标:

  1. 请求报文关键数据 请求方法、URL、请求数据(请求头、请求体)
  2. 响应报文关键数据 响应状态码、响应数据(响应体)

四、接口文档内容

一个规范的接口文档,要包含以下信息:
基本信息 :接口名称、请求方法、请求路径、接口描述
请求参数:请求头请求体(包含具体的请求参数名称、参数类型、是否必须、示例、备注)
返回数据:不同情况的响应状态码响应数据(包含具体的响应数据名称、类型、是否必须、默认值、示例、备注)

案例如下:
在这里插入图片描述

五、接口测试用例设计

在这里插入图片描述

六、接口用例设计的方法与思路(关注接口的功能测试)

功能测试:验证接口功能是否按照接口文档实现(输入+处理+输出)

单接口测试:

正向功能:(通过性测试)

  • 仅必填参数
  • 全部参数
  • 参数组合

反向测试:(异常测试)

  • 参数异常:无参、少参、多参、错误参数
  • 数据异常:数据为空、长度不符、类型不符、错误数据
  • 业务数据异常:结合业务功能考虑输出的各种异常返回情况

多接口测试:业务场景功能测试(站在用户角度考虑常用的使用场景)

接口之间数据依赖

七、单接口测试:

针对人力资源管理系统的员工管理接口进行测试
在这里插入图片描述

八、场景测试:

登录系统后,对员工进行增删改查的操作
在这里插入图片描述

今天这篇文章就到这里了,文底会有一些小练习大家可以抽空做下,在下篇文章的时候会把答案放在最后,大厦之成,非一木之材也;大海之阔,非一流之归也,希望大家能持续关注下,文章从浅入深,也欢迎大佬们的随时指导!!!

在这里插入图片描述

作业:

1、关于接口测试点设计,以下描述正确的有:

A:接口测试可以对单接口以及多个接口关联的业务场景进行测试。
B:接口测试可以对性能,安全等测试点进行测试。
C:接口测试用例需要对接口的请求参数进行设计,测试全部参数、组合参数、必填参数的正向测试;以及反向的多参、少参、无参、错误参数测试;
D:设计的接口测试用例,有部分会与手工测试用例重复。

2、关于接口用例的设计思路,以下描述正确的有:

A:可以对接口的参数进行测试,包括了异常的多参、少参、无参、错误参数和正向的必填参数,组合参数,全部参数。
B:可以对接口的数据进行测试,包括正确的数据和异常的数据。设计登陆接口的登陆成功案例和用户名中有特殊字符等案例。
C:可以对接口的依赖关系进行测试,如:业务系统需求设计为需要先登陆才能添加员工,那么我们可以设计正向的和反向的用例,分别测试登陆后添加员工和没有登陆时添加员工。
D:我们必须测试接口的域名错误场景,模拟域名不正确时,是否能正确调用接口。

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

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

相关文章

人工智能大模型 | 通俗讲解AI基础概念

LLM LLM(Large Language Models)指的是大型语言模型。这些模型是自然语言处理(NLP)技术的一部分,使用深度学习训练来理解、生成、翻译文本,甚至执行特定的语言相关任务,如问答、文本摘要、编程…

技术方案、实施例和图纸应该怎么写?

技术方案、实施例和图纸应该怎么写?

【Vue3】组件通信之mitt

【Vue3】组件通信之mitt 背景简介开发环境开发步骤及源码总结 背景 随着年龄的增长,很多曾经烂熟于心的技术原理已被岁月摩擦得愈发模糊起来,技术出身的人总是很难放下一些执念,遂将这些知识整理成文,以纪念曾经努力学习奋斗的日…

【如何高效处理前端常见问题:策略与实践】

在快速发展的Web开发领域,前端作为用户与应用程序直接交互的界面,其重要性不言而喻。然而,随着技术的不断演进和项目的复杂化,前端开发者在日常工作中难免会遇到各种挑战和问题。本文旨在深入探讨前端开发中常见的问题类型&#x…

【竞技宝jjb.lol】奥运会:樊振东夺金证明自己

北京奥运会乒乓球男子单打决赛结束,中国球员樊振东在决赛中4比1击败了瑞典天才莫雷加德,为中国队保下了这枚关键的金牌。樊振东也成为了继马龙之后,第二位同时拿到奥运会、世锦赛、世界杯、亚运会、亚锦赛、亚洲杯、巡回赛总决赛、全运会单打冠军的球员。作为国乒男队一哥,樊振…

嵌入式day19

文件 标准io:stdio.h(计算机角度做输入输出)(读写文件) 标准io概念 IO库,c语言的标准 IO :input output I :键盘是标准输入设备 》默认输入就是指键盘 /dev/input O&#xff1a…

Redis01- 基础篇

什么是Redis 与MySQL数据存在磁盘上不同的是,Redis数据以k-v的键值对形式存在内存中,支持持久化。由于存在内存中,其读写速度很快。 Redis为什么那么快 主要有三点: 基于内存,读写速度快IO多路复用、单线程读写有高效…

使用pinyin4j解决中文排序时候多音字问题

1、引入jar包 <dependency><groupId>com.belerweb</groupId><artifactId>pinyin4j</artifactId><version>2.5.1</version></dependency> 2、工具类 public class SortUtil {private static HanyuPinyinOutputFormat pinyinO…

[米联客-安路飞龙DR1-FPSOC] UDP通信篇连载-02 MAC层程序设计

软件版本&#xff1a;Anlogic -TD5.9.1-DR1_ES1.1 操作系统&#xff1a;WIN10 64bit 硬件平台&#xff1a;适用安路(Anlogic)FPGA 实验平台&#xff1a;米联客-MLK-L1-CZ06-DR1M90G开发板 板卡获取平台&#xff1a;https://milianke.tmall.com/ 登录“米联客”FPGA社区 ht…

SX_c语言字符带空格字符串读写_9

改项目的时候又发现c语言读字符串的一些细节这里做补充其中%[^\n]可以读取带空格的字符串 #include <stdio.h>int main(){char cmd;scanf("%c", &cmd);char time[32] {0};scanf("%s", time);printf("%c\n", cmd);printf("%s&quo…

QT使用腾讯云对象存储SDK报错:`undefined reference to qcloud_cos`

QT使用腾讯云对象存储SDK编译时报错&#xff1a;undefined reference to qcloud_cos 文章目录 QT使用腾讯云对象存储SDK编译时报错&#xff1a;undefined reference to qcloud_cos问题1&#xff1a;在VS中编译cossdk报错LNK1104 无法打开文件“PocoFoundationd.lib”问题2&…

海外媒体发稿:意大利-展新社/意大利金融报的影响力

一.IT WDPP&#xff1a;世界发展新闻社意大利站 世界发展新闻社&#xff08;展新社&#xff09;是全球顶级通讯社之一&#xff0c;其在全球多国设立分社&#xff0c;热门资讯覆盖全球18种主流语言。作为世界发展新闻社的意大利站&#xff0c;IT WDPP以其独特的视角和深度报道&…

工具学习_CONAN_Consuming Packages

1. Build a simple CMake project using Conan 首先创建一个使用最流行的 C 库之一 Zlib 的字符串压缩器应用程序&#xff0c;教程将使用 CMake 构建系统&#xff0c;但需要注意 Conan 适用于任何系统构建方式。 为了完成教程&#xff0c;首先下载对应的项目&#xff1a; git…

大学生助学贷款

大学生助学贷款 文章目录 大学生助学贷款生源地贷款1. 网上申请2. 线下申请 生源地贷款 助学贷款分为生源地贷款和高校助学贷款, 一般情况下都是申请的生源地贷款.第一次贷款, 需要现在网上申请, 申请结束之后, 会有两张表, 贷款申请表和困难认定申请表.注意: 贷款申请表和困难…

pdf转图片要怎么转?6个软件帮助你轻松转换图片格式

pdf转图片要怎么转&#xff1f;6个软件帮助你轻松转换图片格式 将PDF文件转换为图片格式是许多用户的常见需求&#xff0c;尤其是在需要展示、编辑或分享PDF内容时。以下是六款能够帮助你快速、轻松地将PDF转换为图片格式的软件&#xff1a; 迅捷PDF转换器 这是一款非常简单好…

Redis01——Redis简介

目录 NOSQL与SQL的差异 数据结构&#xff1a;结构化 VS 非结构化 数据关联&#xff1a;关系型 VS 非关系型 数据查询&#xff1a;SQL查询 VS 非SQL查询 事务特性&#xff1a;满足事 VS 没有完全满足 Redis 简介 Redis 安装 Redis 数据结构简介 Redis 常用命令&#xff…

论文被Turnitin查出AI率,会受影响吗?

无论是作业或是毕业论文的提交&#xff0c;原创性已成为了硬性标准。因此提交前都会使用Turnitin&#xff08;www.checktoo.com&#xff09;进行论文检测&#xff0c;用来确保其原创性。可当Turnitin报告能显示出论文的AI率时&#xff0c;越来越多学者开始担忧“这会对我的论文…

c++单例实践

C单例实践 在日常开发中&#xff0c;虽然太多的单例调用会让代码的耦合度变高&#xff0c;但是例如日志类这种&#xff0c;单例模式就变得非常有。所以这篇文章为大家介绍static 关键字相关知识以及如何实现自己的C单例类。 static关键字 首先让我们请出今天的主角: static。…

Brave浏览器:开启隐私保护新时代

今天电脑天空要向大家介绍一款专注隐私安全的浏览器——BraveBrowser&#xff0c;它不仅仅是一个浏览工具&#xff0c;更是你在线隐私的守护者&#xff01; BraveBrowser是一款免费且开源的网络浏览器&#xff0c;它的核心优势在于其强大的广告和跟踪器阻止功能。想象一下&…

数据要素流通交易的场景概述

00前言 数据要素作为国家重点发展方向&#xff0c;如何发挥其数据要素价值是目前研究的重点。核心的观点是流动的数据才能产生价值&#xff0c;如果数据并没有开放、共享那么价值一定是有限的。目前&#xff0c;数据流通类型主要包括数据开放、数据共享和数据交易三种。 数据…