从零开始学习软件测试-第39天笔记

接口测试

http消息结构

  • 请求报文
    • 请求行
      • 请求方式  url  协议版本
    • 请求头
    • 空行
    • 请求体
  • 响应报文
    • 响应行
      • 协议版本  状态码  状态消息
    • 响应头
    • 空行
    • 响应体

请求参数类型

  • path参数
    • 写在路径中的
      • https://xxx.xxx.com/参数值
  • query参数
    • 写在url问号后面,以键值对形式存在
      • https://xxx.xxx.com/xx?参数名=参数值&参数名=参数值
  • /header请求头参数
    • Content-Type:application/json
  • /body请求体参数
    • 纯文本请求体
    • 一般是json格式的数据
    • form表单
      • form文本
      • form文件

注意:如果请求头中写了Content-Type:application/json,请求体无论是不是字典格式的都要写成字典,如果没有写这个请求头,那么字典就是字典,不是字典就是from表单,如果请求体格式为json的时候,默认要写请求头Content-Type:application/json

postman操作

添加query参数

  • 直接写在url里的问号后面,他是和postman中params下面的query parmas是同步的。

添加请求体

  • 在headers中添加。

添加纯文本请求体

  • 在body中的raw里面添加。

添加form文本

  • 在body下面的form data中添加。

添加form文件

  • 在body下面的form data中添加。
  • 将鼠标放在key上面,点击下拉框,选择file。

添加cookie

  • 点击右上角的cookis
  • 在输入框中填写域名
  • 点击add cookie
  • 将第一个键值对的键改为cookie的名称,值改为cookie的内容

断言

  • 在tests模块下进行断言
  • 断言状态码
    • status code:code is 200
  • 断言响应内容
    • response body:contains string

接口的关联

  • A接口的响应作为B接口的参数。
  • 需要考虑三个点,怎么取,怎么存,怎么用。
  • 取的话在tests模块中添加代码pm.response.json()取出所有的数据,想要取出一部分,如果是字典就使用.key,列表的话就用[下标]去取。
  • 存的话是使用pm.globals.set(全局变量名,值)将数据存储为全局变量。
  • 用的话是使用{{全局变量名}}的格式进行引用即可。

参数化(数据驱动)-json

  • 想要批量运行相同请求的时候,可以使用参数化。
  • 先将测试脚本写好,即在postman中添加接口信息。
  • 编写数据文件。
    • 使用json文件写数据。
    • 用列表套字典的格式,有几条数据,写几个字典。
    • 字典的键是变量名,值是想要传入的数据。
    • 将接口中的参数值改为{{变量名}}的格式。
    • 将接口保存到collections中。
    • 点击collections右边的三个点,点击run collection。
    • 点击select file,选择数据文件。
    • 点击run运行即可。

参数化 -csv

  • 步骤同上
  • 编写数据文件
    • 使用csv文件编写数据。
    • 第一行写变量名,用英文逗号隔开,在变量名下方添加对应数据。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

多线程之基础篇(一)

一、Thread类 1、线程的创建 大家都熟知创建单个线程的三种方式,通过继承Thread类创建线程并重写该类的run()方法;通过实现Runnable接口创建线程一样要重写run()方法;以上的两个run()方法都是线程的执行体;第三,使用…

【数据结构】前言概况 - 树

🚩纸上得来终觉浅, 绝知此事要躬行。 🌟主页:June-Frost 🚀专栏:数据结构 🔥该文章针对树形结构作出前言,以保证可以对树初步认知。 目录: 🌍前言:&#x1f3…

极光笔记 | 推送服务数据中心选择:合规性与传输效率的双重考量

随着全球化进程的深入,跨境数据传输与存储问题已经变得愈发重要。推送服务的数据中心节点选择不仅关乎数据访问速度和用户体验,同时也直接牵扯到数据合规性和安全保障。EngageLab Push深知这一点,为了满足更多国际客户和全球用户触达需求&…

将本地jar包手动添加到Maven仓库依赖处理

一、起因 在日常开发中,经常会遇到一些情况,就是在更新Maven时,从网上下载jar包的时候网络不稳定或者其他原因导致jar包数据缺失而导致的依赖无法正常引入的情况. 还有一些其他情况如个人jar包一类的。 二、解决 以前以上这些情况&#x…

Android12之/proc/pid/status参数含义(一百六十五)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…

微服务·数据一致-seata

微服务数据一致-seata 概述 Seata(Simple Extensible Autonomous Transaction Architecture)是一个开源的分布式事务解决方案,旨在帮助应用程序分布式事务管理的挑战。Seata提供了一套全面的工具和框架,可用于实现跨多个数据库和…

网络安全之认识网络安全网格架构(CSMA)

“网络安全网格(CyberSecurity Mesh)”是 Gartner 提出的网络安全技术发展新趋势,近两年连续入选其年度重要战略技术趋势研究报告,成为当前网络安全领域流行的热词,受到网络安全从业者的高度关注。 一、概念产生的背景…

软件测试/测试开发丨Web自动化 PageObject设计模式

点此获取更多相关资料 本文为霍格沃兹测试开发学社学员学习笔记分享 原文链接:https://ceshiren.com/t/topic/27167 一、page object 模式简介 马丁福勒个人博客 selenium 官网 1.1、传统 UI 自动化的问题 无法适应 UI 频繁变化无法清晰表达业务用例场景大量的样…

python 学习笔记(5)——SMTP 使用QQ邮箱发送邮件

目录 发送邮件 1、准备工作: 2、发送纯文本信息内容: 3、发送 HTML 格式的内容: 4、发送带附件的邮件: 5、群发(一个邮件,发给多个人): 发送邮件 以下都 以 QQ邮箱 为发送方举…

Nginx+Tomcat(多实例)实现动静分离和负载均衡

一、Tomcat 多实例部署 1.在安装好jdk环境后,添加两例tomcat服务 #解压安装包 cd /opt tar zxvf apache-tomcat-9.0.16.tar.gz#移动并复制一例 mkdir /usr/local/tomcat mv apache-tomcat-9.0.16 /usr/local/tomcat/tomcat1 cp -a /usr/local/tomcat/tomcat1 /usr…

记录一次开机内存分析的全过程

作者:zzy的学习笔记 记录一次开机内存分析的全过程,尽量详尽的介绍常用内存分析工具和命令行的使用,结合具体问题探讨开机内存分析的实践经验。通过这篇文章我会介绍开机内存的常用测试分析工具的基本使用方法,以及如何通过抓取出…

在Ubuntu上建立博客网站,利用Cpolar+Inis快速实现专业写作

文章目录 前言1. Inis博客网站搭建1.1. Inis博客网站下载和安装1.2 Inis博客网站测试1.3 cpolar的安装和注册 2. 本地网页发布2.1 Cpolar临时数据隧道2.2 Cpolar稳定隧道(云端设置)2.3.Cpolar稳定隧道(本地设置) 3. 公网访问测试总…

springboot+redis

1.pom.xml <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency> 2.yml配置 # redis 配置redis:host: 127.0.0.1#超时连接timeout: 1000msjedis:pool:#最大连…

盲打键盘的正确指法指南

简介 很多打字初学者&#xff0c;并不了解打字的正确指法规范&#xff0c;很容易出现只用两根手指交替按压键盘的“二指禅”情况。虽然这样也能实现打字&#xff0c;但是效率极低。本文将简单介绍盲打键盘的正确指法&#xff0c;以便大家在后续的学习和工作中能够提高工作效率…

Pytorch Advanced(三) Neural Style Transfer

神经风格迁移在之前的博客中已经用keras实现过了&#xff0c;比较复杂&#xff0c;keras版本。 这里用pytorch重新实现一次&#xff0c;原理图如下&#xff1a; from __future__ import division from torchvision import models from torchvision import transforms from PIL…

2024年java面试--mysql(2)

系列文章目录 2024年java面试&#xff08;一&#xff09;–spring篇2024年java面试&#xff08;二&#xff09;–spring篇2024年java面试&#xff08;三&#xff09;–spring篇2024年java面试&#xff08;四&#xff09;–spring篇2024年java面试–集合篇2024年java面试–redi…

FPGA实战小项目3

基于FPGA的波形发生器 基于FPGA的波形发生器 基于FPGA的beep音乐播放器设计 基于FPGA的beep音乐播放器设计 基于FPGA的cordic算法实现DDS sin和cosine波形的产生 基于FPGA的cordic算法实现DDS sin和cosine波形的产生

iframe 实现跨域,两页面之间的通信

一、 背景 一个项目为vue2&#xff0c;一个项目为vue3&#xff0c;两个不同的项目实现iframe嵌入&#xff0c;并实现通信 二、方案 iframe跨域时&#xff0c;iframe组件之间常用的通信&#xff0c;主要是H5的possmessage方法 三、案例代码 父页面-vue2&#xff08;端口号为…

JWT 使用教程 授权 认证

JWT 1.什么是JWT JSON Web Token (JWT) is an open standard (RFC 7519) that defines a compact and self-contained way for securely transmitting information between parties as a JSON object. This information can be verified and trusted because it is digitally s…

轻松搭建本地知识库的ChatGLM2-6B

近期发现了一个项目&#xff0c;它的前身是ChatGLM&#xff0c;在我之前的博客中有关于ChatGLM的部署过程&#xff0c;本项目在前者基础上进行了优化&#xff0c;可以基于当前主流的LLM模型和庞大的知识库&#xff0c;实现本地部署自己的ChatGPT&#xff0c;并可结合自己的知识…