接口自动化测试用例

1、接口文档

根据开发、产品的接口文档,以及评审,进行设计接口测试用例,它不像UI测试,有个界面,对于简单的系统,需求文档不提供也能覆盖所有功能,接口测试虽说可以抓包,但抓包无法覆盖所有接口和字段,必须要求提供详细接口文档,甚至可以辅助扣代码把接口list扣出来,字段可能扣不全但接口是全的,例如自动化测试平台系统就可以在url.py中很直观的看到所有接口list的url。

2、设计用例基本原则

普通接口,1个接口设计1个正常用例,2个异常用例-如不存在的值、必填值校验

重要接口,1个接口则可设计3-10个接口用例

流程接口,结合在测试计划中排序和调试。

3、录入接口用例

(图片有点小,可以点击扩大查看)

fa5fb0de780d06016eed03053e0c79d8.png

▲图 4.1

在如上图4.1所示,在各个字段填写正确接口信息,点击发送,可以看到响应Body一栏,出现接口的响应信息,如下图4.2所示:

c7d47332dbb6531a677dec69eb4b974b.png

▲图 4.2

通常接口录入时,如果是post请求且是json数据则在请求Body里面填入。

如果是get请求,或者post请求的form格式数据,则在参数一栏填写,如下图4.3所示:

a42a3ea873c1d05263b98bcc286a9a6a.jpeg

▲图 4.3

头信息 默认设置了3个参数,全删或不填再次编辑时默认是3个字段,如下图4.4所示:

ca5e5d047eec1d732b2f12cc00745d66.png

▲图 4.4

认证 一般填token参数,这参数在是上一个登录接口返回值中用正则表达式关键字设置为token,先发送执行上一个接口,则在当前接口中通过认证可以获取token动态值。后面会把token设置在系统参数设置项里面就会更方便一些,不用每次在接口列表中先执行登录接口获取,而是在系统参数里面自动执行登录接口来获取token,功能还在开发中。如下图4.5所示:

c4480c9d5e468a26a08404d786a1cd9b.png

▲图 4.5

断言 是输入要判断的响应数据,如下图4.6所示:

349b929c20d212b3c027b3fd2001f245.png

▲图 4.6

正则表达式,填写关键字,如token等,索引是指有多个匹配值时,匹配第0个,第1个,第2个,一般输入0或1,或2,如下图4.7所示:

c6fe474aeda828c0cd5ee3fe3c065773.png

▲图 4.7

发送,调试通过后,点击保存。此时即完成了接口自动化测试用例的录入。

00007c466cbe8fefd94984088e367915.png

▲图 4.8

在上图4.8用例列表中,可以编辑和复制,界面信息和新增是一样的。点击编辑,则进入编辑页面,如果接口内容存在一部分相同内容,则可以点击复制来进行新增用例的操作,提高接口用例录入的效率,非常的方便。

如果redis没启动,或者token接口没有执行,则在发送执行当前有token参数的接口时,接口执行速度会很慢,执行完成后会响应Body中报相应error信息,如下图4.9所示:

378b17872b3b8a82a8e01398c3e0f5b2.png

▲图 4.9

这时,你再可以启动redis以及执行有token正则表达式的登录接口,再来执行当前接口,就会不会报异常了,你在请求头中可以看到token的具体值,以及断言结果,响应码和响应时间等接口执行结果信息,如下图4.10,4.11所示:

3d60cef9923ae7215e23c559ab0c35b6.png

▲图 4.10

7783cee64bb07a8c65b1f7e59a40dce2.png

▲图 4.11


Autotestplat-V2.6版本在 github 发布了。

## 新增/优化功能

优化(测试用例): 优化了测试用例录入和发送执行的功能。

a1f820ede13952794445e929f88e290e.png

欢迎体验,联系我们

f812534c5cba3aa2f130729a8fefa8cc.jpeg

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【android开发-10】android中四种布局详细介绍

在Android开发中,常见的四种布局分别是:线性布局(LinearLayout)、相对布局(RelativeLayout)、帧布局(FrameLayout)和绝对布局(AbsoluteLayout)。 注意&#…

Numpy数组的运算(第7讲)

Numpy数组的运算(第7讲)         🍹博主 侯小啾 感谢您的支持与信赖。☀️ 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ…

mazing是什么软件?为什么选择iMazing

说起iOS设备管理工具,可能大家还有点陌生,其实就是Apple公司开发的移动设备,因其的操作系统是独特的iOS系统,所以又叫iOS设备。比如大家都在用的iPhone手机,就是这样类型的一个设备。 mazing是什么软件? iMazing是一…

银河麒麟服务器部署Prometheus+Grafana

#年薪百万# 一、环境准备 操作系统:Operating System: Kylin Linux Advanced Server V10 (Sword) (X86-64) prometheus:prometheus-2.48.0.linux-amd64 grafana:grafana-enterprise-10.2.2.linux-amd64 node_exporter:node_expor…

React 快速实现拖拽改变容器宽高度

一、前言 有时我们需要对一个容器的宽高度进行动态的修改, 最简单直接的方法一般为:用户可以拖拽容器的边缘来改变其大小,例如下面这样的效果: 在react中,我们可以使用re-resizable这个三方库来快速的实现上面的效果…

Python os模块及用法

os 模块代表了程序所在的操作系统,主要用于获取程序运行所在操作系统的相关信息。 在 Python 的交互式解释器中先导入 os 模块,然后输入 os.__all__ 命令(__all__ 变量代表了该模块开放的公开接口),即可看到该模块所包…

2023时代楷模人民艺术家蒋旗作品欣赏

时代楷模是我们生活中的榜样人物,是我们行业内的指路明灯,是传承弘扬中华优秀传统文化的传播者! 弘扬中华优秀传统文化,繁荣中国书画艺术。坚持守正创新,推动书画艺术的创造性转化和创新性发展为优秀书画家搭建更为广…

YOLOv8 YoLov8l 模型输出及水果识别

🍨 本文为[🔗365天深度学习训练营学习记录博客 🍦 参考文章:365天深度学习训练营 🍖 原作者:[K同学啊 | 接辅导、项目定制] 🚀 文章来源:[K同学的学习圈子](https://www.yuque.com/m…

spring boot整合mybatis进行部门管理管理的增删改查

部门列表查询: 功能实现: 需求:查询数据库表中的所有部门数据,展示在页面上。 准备工作: 准备数据库表dept(部门表),实体类Dept。在项目中引入mybatis的起步依赖,mysql的…

同旺科技 USB TO RS-485 定制款适配器--- 拆解(三)

内附链接 1、USB TO RS-485 定制款适配器 ● 支持USB 2.0/3.0接口,并兼容USB 1.1接口; ● 支持USB总线供电; ● 支持Windows系统驱动,包含WIN10 / WIN11系统32 / 64位; ● 支持Windows RT、Linux、Mac OS X、Windo…

Python 案例实训教学,课程展示及结课存档优化|ModelWhale 版本更新

大雪时节,仲冬如约而至,我们也迎来了 ModelWhale 新一轮的版本更新。 本次更新中,ModelWhale 主要进行了以下功能迭代: 优化 课程大纲展示(团队版✓)优化 作业批量导出存档(团队版✓&#xff…

springboot 整合 RocketMQ 可用于物联网,电商高并发场景下削峰,保证系统的高可用

本文根据阿里云 RocketMQ产品文档整理,地址:https://help.aliyun.com/document_detail/29532.html?userCodeqtldtin2 RocketMQ是由阿里捐赠给Apache的一款低延迟、高并发、高可用、高可靠的分布式消息中间件。经历了淘宝双十一的洗礼。RocketMQ既可为分布式应用系统…

Hadoop学习笔记(HDP)-Part.15 安装HIVE

目录 Part.01 关于HDP Part.02 核心组件原理 Part.03 资源规划 Part.04 基础环境配置 Part.05 Yum源配置 Part.06 安装OracleJDK Part.07 安装MySQL Part.08 部署Ambari集群 Part.09 安装OpenLDAP Part.10 创建集群 Part.11 安装Kerberos Part.12 安装HDFS Part.13 安装Ranger …

算法通关村第三关—继续讨论数据问题(黄金)

继续讨论数据问题 一、数组中出现次数超过一半的数字 Leetcode 169.多数元素 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如:输入如下所示的一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数…

个人博客网站需求分析报告

目录 一. 概述1.1 目的1.2 背景1.3 术语定义 二. 需求分析三. 系统功能需求3.1 功能总览3.2 业务流程图1.系统用例图2.系统流程 四.开发技术4.1 技术组成 五.界面及运行环境1.用户界面2.运行环境 一. 概述 1.1 目的 1.2 背景 1.3 术语定义 二. 需求分析 三. 系统功能需求 …

微软NativeApi-NtQuerySystemInformation

微软有一个比较实用的Native接口:NtQuerySystemInformation,具体可以参考微软msdn官方文档:NtQuerySystemInformation, 是一个系统函数,用于收集特定于所提供的指定种类的系统信息。ProcessHacker等工具使用NtQuerySys…

【matlab程序】matlab画螺旋图|旋转图

%% 数学之美====》螺旋线 % 海洋与大气科学 % 20231205 clear;clc;close all; n=10; t=0:0.01:2pin; R=1; xx=nan(length(t),1);yy=nan(length(t),1); for i=1:length(t) xx(i)=Rcos(t(i)); yy(i)=Rsin(t(i)); R=R+1; end figure set(gcf,‘position’,[50 50 1200 1200],‘col…

【语义分割数据集】——imagenet语义分割

地址:https://github.com/LUSSeg/ImageNet-S 1 例图 2. 类别和数量信息 疑问 根据原文的描述:Based on the ImageNet dataset, we propose the ImageNet-S dataset with 1.2 million training images and 50k high-quality semantic segmentation annot…

实用方法 | 搭建真正满足用户需求的在线帮助中心

随着互联网的普及和信息技术的快速发展,客户服务和支持变得越来越重要。为了提高客户满意度和维持良好的品牌形象,越来越多企业都开始搭建自己的在线帮助中心。 不知从何下手?细想一下,搭建在线帮助中心主要就是为了解决用户的问…

【Angular开发】Angular 16发布:发现前7大功能

Angular 于2023年5月3日发布了主要版本升级版Angular 16。作为一名Angular开发人员,我发现这次升级很有趣,因为与以前的版本相比有一些显著的改进。 因此,在本文中,我将讨论Angular 16的前7个特性,以便您更好地理解。…