当前位置: 首页 > news >正文

Postman配置环境变量

🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快

Postman是一套比较方便的接口测试工具,但我们在使用过程中,可能会出现创建了API请求,但API的URL会随着服务器IP地址的变化而改变。

这样的情况下,如果每一个API都重新修改URL的话那将是非常的麻烦,所以PostMan中也提供环境变量的设置

我们在PostMan的右上角可以设定当前的环境Environment。

提示:在实际的日常工作中,一般我们一个模块、一个业务流程或者一个项目创建一个Collections文件夹,把该范围所有要测试的接口都放入这个Collections文件夹中,同时我们也会给这个Collections文件夹,针对不同的环境配置不同的环境变量,比如:本地环境、测试环境、生产环境等。

1、PostMan中操作环境变量区域

在PostMan中的右上角,如下图:

(1)第一个是:选择你之前定义好的环境变量。

我们新注册刚刚开始使用PostMan的时候,是没有定义任何环境变量的,所以点击下拉按钮没有任何展示内容。

(2)第二个是:快速查看PostMan当前生效的环境变量和全局变量。

(3)第三个是:设置环境变量和全局变量。

之前版本是一个小齿轮的图标

上图中英文的意思是:

  • 环境变量是一组变量,允许您切换请求的上下文(也就是说切换不同的请求,都可以用到环境变量中的配置),也可以在多个工作空间之间共享环境变量中的内容。
  • 您可以在环境中声明变量并为其提供一个初始值,然后通过将变量名称放在{{ }}内在请求中使用它。

2、设置环境变量

以我们之前举例的"查询02学院信息"为例,如下图:

(1)环境变量的配置

点击设置环境变量按钮,在弹出的页面中点击Add

对环境变量进行配置,如下图:

说明:

  • Environment Name:就是给环境变量起个名字,一般与Collections相对应。
  • VARIABLE:变量名。
  • INITIAL VALUE:变量的初始值。
  • CURRENT VALUE:变量的当前值。
    变量的当前值是发送请求时使用此值。
    当前值永远不会同步到Postman的服务器。 如果不加改动,当前值将自动采用初始值。
    还有上图界面下方的提示中也说明了,如果需要变量在不同位置使用重用值,可以设置变量的当前值,以防止与团队共享敏感值。
  • Persist All:将所有变量的当前值替换前面的初始值。
  • Reset All:将所有变量的初始值替换后面的当前值。
  • ...:三个点,就是勾选当前页面的显示栏目,默认就好。

最后如果是新增环境变量点击Add,如果是重新编辑了环境变量点击Update。之后在环境变量设置的页面中就看到刚刚设置的环境变量了,如下图:

说明:

  • 点击环境变量名称,可以对该环境变量内容进行编辑。
  • 还可以对环境变量进行如下操作:
    • Share:分享当前环境变量。
    • Duplicate Environment:复制当前环境变量。
    • Download Environment:下载当前环境变量。
    • Manage Roles:管理角色。需要登录团队才能执行这个动作。
    • Remove from workspace:从当前工作区中删除当前环境变量。
      如果当前环境变量只有一份,仅存在于此工作空间中,是无法删除。 您可以永久删除它(使用Delete),也可以将其共享到另一个工作区,然后再将其删除。
    • Delete:删除当前环境变量。

总结:我们可以把当前测试所有接口中,公共部分的变量或者有特殊需求的变量都定义在环境变量中。

提示:

Postman对合作开发非常友好,在Postman中可以通过邀请好友加入团队,来共同协作完成测试与编写。
点击Invite即可邀请成员加入团队。也可以创建自己的独立Workspace来隔离不同的项目,Workspace可以在Postman的顶部工具栏中找到,点击下拉框可以看到自己所在的工作空间,Personal里是自己的工作空间,Team是你创建的团队或你所加入的团队的工作空间。

如下图:

(2)环境变量的使用

环境变量的使用也是非常的方便,在接口的信息或者参数中,使用{{变量名}}来调用环境变量即可。

例如还是上面的练习。

选择刚配置好的“学院系统测试”环境变量。(有多组环境变量的时候,就是在这里选择进行切换)

然后使用环境变量中的内容,如下图:

总结:以后我们可以针对不同的测试流程,或者不同的测试环境,定义不同的环境变量。
  • 方便公共变量的修改。
  • 方便不同环境的切换。

以上就是在PostMan中使用环境变量的全部过程。

3、设置全局变量

全局变量对Postman中所有的请求都可以使用,不用切换。全局变量的配置使用和环境变量的配置使用基本相同。

(1)全局变量的配置

点击设置环境变量按钮,在弹出的页面中点击Globals

配置全局变量,点击Save保存。

保存后,在环境变量页面中不会有任何显示,如下图。

我们可以在快速查看中来查看全局变量。

(2)全局变量的使用

和环境变量的使用相同,使用{{变量名}}来调用全局变量。

说明:

Postman中会有一些默认的全局变量,当我们在变量值的输入框中输入{{就会显示出来,如下图:

有随机id,时间戳,随机数等,我们可以自行选择使用。

特别注意:全局变量和环境变量同名时,环境变量的优先级要高于全局变量。

4、快速查看按钮

我们可以点击快速查看按钮,来查看全局变量和当前生效的环境变量。

同时在快速查看界面可以直接修改环境变量和全局变量的当前值(初始值是不能修改的,前面说过初始值和当前值的区别),这也是一个非常实用的功能。

同时也可以点击Edit,直接对环境变量或者全局变量进行重新编辑。

5、导入环境变量

点击设置环境变量按钮,在弹出的页面中点击Import

我们可以把别人导出的Postman环境变量进行导入,文件是一个.json文件。

非常简单,这里就不演示了。

6、补充

我们在调用环境变量的时候,可以看到E表示环境变量,G表示全局变量。

还有当环境变量和全局变量重名的时候,环境变量会把全局变量覆盖,如下图:

全局变量name的展示说明中,内容上出了一条横线,说明会被环境变量中的name变量覆盖。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

相关文章:

Postman配置环境变量

🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 Postman是一套比较方便的接口测试工具,但我们在使用过程中,可能会出现创建了API请求,但API的URL会随着服务器IP地址的变化而改…...

import语句详解

在 Java 中,import 语句用于引入其他包中的类、接口或静态成员,以便在当前源文件中直接使用它们,而不需要写完整的类名(包括包名)。以下是 import 语句的详细解释和使用方法: 一、import语句的基本概念 定…...

数据结构与算法之二叉树: LeetCode 199. 二叉树的右视图 (Ts版)

二叉树的右视图 https://leetcode.cn/problems/binary-tree-right-side-view/ 描述 给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 示例 1 输入:root [1,2,3,nu…...

CentOS7修改Docker默认存储路径

当你使用Docker时,Docker的默认配置是将镜像、容器和卷存储在系统/var/lib/docker/目录下,如果docker镜像安装的太多会导致磁盘不够,你可以尝试以下方法来释放空间: 清理无用的镜像和容器:使用docker命令删除不再使用…...

宝塔面板使用 GoAccess Web 日志分析教程

宝塔面板是一个简单方便的服务器运维面板,但其网站统计功能是收费的。而 GoAccess 是一个用 C 编写的免费开源 Web日志分析器,本文将介绍如何在宝塔面板中开启 GoAccess Web 日志分析功能。 内容索引 下载安装 GoAccess在宝塔面板中添加日志切割的计划任务将 Web 日志输出到…...

【FPGA】时序约束与分析

设计约束 设计约束所处环节: 约束输入 分析实现结果 设计优化 设计约束分类: 物理约束:I/O接口约束(例如引脚分配、电平标准设定等物理属性的约束)、布局约束、布线约束以及配置约束 时序约束:设计FP…...

c++入门之 命名空间与输入输出

1、命名空间 1.1使用命名空间的原因 先看一个例子&#xff1a; #include <iostream>int round 0;int main() {printf("%d", round);return 0; }请问&#xff0c;这个程序能跑起来吗&#xff1f; 答案是否定的 原因是&#xff0c;当我们想创建一个全局变量 …...

【zotero】解决无法参考文献交叉跳转、相关参考文献插件推荐

无法跳转 参考大佬文章的方法&#xff1a; https://blog.csdn.net/air__Heaven/article/details/137470687 但是有可能有时候又跳不了了&#xff0c;可以多多执行一下 zotero-citation插件 github地址 &#xff1a; https://github.com/MuiseDestiny/zotero-citation cl ht…...

《深度学习模型在鸿蒙分布式框架下的跨设备高效之旅》

在人工智能领域&#xff0c;深度学习模型的训练与推理通常需要强大的计算资源和大量的数据支持。而鸿蒙系统的分布式框架为解决这一问题提供了新的思路和方法&#xff0c;使得深度学习模型能够在多个设备之间实现高效的训练与推理。 鸿蒙分布式框架概述 鸿蒙系统是一款面向万…...

不同方式获取音频时长 - python 实现

DataBall 助力快速掌握数据集的信息和使用方式&#xff0c;会员享有 百种数据集&#xff0c;持续增加中。 需要更多数据资源和技术解决方案&#xff0c;知识星球&#xff1a; “DataBall - X 数据球(free)” -------------------------------------------------------------…...

用python实现烟花代码,完整代码拿走不谢

有时候用python实现一些有趣的代码&#xff0c;既有趣&#xff0c;又能提升知识 使用Python实现动态烟花代码 效果如下&#xff1a; 不废话&#xff0c;直接上代码&#xff1a; import pygame from random import randint, uniform, choice import mathvector pygame.math…...

[OPEN SQL] 限定选择行数

本次操作使用的数据库表为SCUSTOM&#xff0c;其字段内容如下所示 航班用户(SCUSTOM) 该数据库表中的部分值如下所示 指定查询多少行数据&#xff0c;我们可以使用语法UP TO n ROWS来实现对数据前n项的查询 语法格式 SELECT * FROM <dbtab> UP TO n ROWS 参数说明 db…...

【入门级】计算机网络学习

网络安全&#xff1a;前端开发者必知&#xff1a;Web安全威胁——XSS与CSRF攻击及其防范-CSDN博客 三次握手四次挥手&#xff1a;前端网络—三次握手四次挥手_前端三次握手-CSDN博客 http协议和https协议的区别&#xff1a;前端网络—http协议和https协议的区别-CSDN博客 网…...

Redis 安装与 Spring Boot 集成指南

安装 Redis 和将其与 Spring Boot 应用集成是构建高效缓存解决方案的常见步骤。以下是详细的指南&#xff0c;帮助你在本地环境中安装 Redis&#xff0c;并在 Spring Boot 项目中配置和使用它。 1. 安装 Redis Windows 环境 Redis 官方并不直接支持 Windows&#xff0c;但你…...

基于 Python 和 OpenCV 的人脸识别上课考勤管理系统

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…...

【c/c++】 windows下调用putty

windows和linux系统存在差异&#xff0c;同样的数据在两边的终端行为都不一样&#xff0c;就很头疼。 例如&#xff1a;换行符&#xff0c;win下是\r\n 而linux下是\n 又或者win下使用vi 好在找到了解决方案 1、通过第三方程序GoTTY&#xff08;支持windows和Linux&#x…...

JVM常见面试题

1.内存泄漏与内存溢出的区别 内存泄漏是指不再使用的对象无法得到及时的回收,持续占用内存空间,从而导致系统内存逐渐减少,系统性能下降,最终可能引发内存溢出内存溢出是指程序在运行时需要分配内存,但 JVM 没有足够的内存可以分配(超出可用内存大小),最终导致内存分配…...

手机租赁系统开发解决方案与市场趋势分析

内容概要 手机租赁系统开发正如一场技术与商业的双重舞会&#xff0c;双方时而相互辉映&#xff0c;时而却也是一场较量。在这片快速变幻的市场中&#xff0c;了解当前的技术实现与挑战尤为重要。例如&#xff0c;系统架构的选择、数据安全性以及用户体验设计都可能成为企业发…...

基于Qt的OFD阅读器开发原理与实践

摘要 本文详细探讨了基于Qt开发OFD阅读器的原理与实践。通过解析OFD文件格式、构建文档结构、实现页面渲染、处理用户交互以及进行性能优化&#xff0c;本文展示了如何使用Qt框架开发一个功能强大、性能优异的OFD阅读器。文章还提供了示例代码和未来发展方向&#xff0c;为开发…...

Redis实现高效的负载均衡算法

1. Redis存储设计 我们需要在 Redis 中存储以下信息&#xff1a; 配置列表&#xff08;List<Config>&#xff09;&#xff1a;存储所有配置项。总权重&#xff1a;存储所有配置的总权重。当前轮询状态&#xff1a;存储当前的轮询状态&#xff08;如当前随机值或索引&am…...

spring依赖注入

一、 注入方式 1. 构造器注入 构造器注入通过构造方法来注入依赖的对象。当Spring容器创建Bean时&#xff0c;会通过构造器来传递依赖对象。这种方式是最推荐的方式&#xff0c;因为它可以确保依赖对象在创建时已经完全注入。 示例&#xff1a; Component public class Car…...

流浪猫流浪狗领养PHP网站源码

源码介绍 流浪猫流浪狗领养PHP网站源码&#xff0c;适合做猫狗宠物类的发信息发布。当然其他信息发布也是可以的。 导入数据库&#xff0c;修改数据库配置/application/database.php 设置TP伪静态&#xff0c;设置运行目录&#xff0c; 后台&#xff1a;/abcd.php/dashboard?…...

ffmpeg 编译遇到的坑

makeinfo: error parsing ./doc/t2h.pm: Undefined subroutine &Texinfo::Config::set_from_init_file called at ./doc/t2h.pm line 24. 编译选项添加&#xff1a; --disable-htmlpages...

灵活运用事务回滚,快捷处理多张数据表格

各位编程宝子们&#xff08;尤其是对MySQL了解不多的宝子们&#xff09;在使用关系表处理时&#xff0c;有时候会希望简单一次性解决多张表的数据处理&#xff0c;但又有时候无从下手。其实有时候掌握数据的事务和回滚便可以简单解决这些事情&#xff0c;接下来我将以一个学生信…...

MyBatis 性能优化

1. 引言 1.1 什么是 MyBatis&#xff1f; MyBatis 是一款流行的 Java 持久层框架&#xff0c;能够将 Java 对象与 SQL 数据库映射起来。与传统的 JDBC 不同&#xff0c;MyBatis 提供了灵活的 SQL 映射功能&#xff0c;使开发者可以专注于业务逻辑&#xff0c;而无需编写冗长的…...

【python基础】python内置函数 zip用法介绍

zip() 是 Python 中非常有用的内建函数&#xff0c;能够将多个可迭代对象&#xff08;如列表、元组、字符串等&#xff09;打包成一个迭代器&#xff0c;它将对应位置的元素组合成元组&#xff0c;并返回一个由这些元组组成的迭代器。通常用于并行处理多个可迭代对象。 1. 基本…...

Unity Android AAB包GooglePlay上线备忘

aab GooglePlay要求新上线的App必须使用aab格式提交&#xff0c;在Unity Build Settings中勾选Build App Bundle 选项即可&#xff1b;或者在代码中设置&#xff1a; EditorUserBuildSettings.buildAppBundle true; 安装测试 https://developer.android.com/tools/bundlet…...

基于springboot的课程作业管理系统源码(springboot+vue+mysql)

风定落花生&#xff0c;歌声逐流水&#xff0c;大家好我是风歌&#xff0c;混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的课程作业管理系统。项目源码以及部署相关请联系风歌&#xff0c;文末附上联系信息 。 项目简介&#xff1a; 可以管理首页、个人中心…...

JVM生产环境常用参数配置及调优建议

一、生产常用参数配置 JAVA_OPTS="-server -Xms4G -Xmx4 -Xmn2G -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:InitiatingHeapOccupancyPercent=45 -XX:ParallelGCThreads=8 -XX:ConcGCThreads=8 -XX:G1HeapRegionSize=16m -XX:MaxGCCount=10 -XX:MetaspaceSize=256m -XX:…...

vue 实现打包并同时上传至服务器端

将 publish_script 及以下文件 upload.server.js 添加到 主文件下&#xff0c;与 src 同级别 具体操作步骤&#xff1a; 1、安装 npm install scp2 2、将下面两条命令加入至 package.json 的 scripts 中 "upload": "node publish_script/upload.server.js&q…...

深入探索AI核心模型:CNN、RNN、GAN与Transformer

在人工智能的飞速发展中&#xff0c;众多深度学习模型和算法不断涌现&#xff0c;推动了许多领域的进步。特别是在图像识别、自然语言处理、生成建模等方向&#xff0c;AI模型的应用越来越广泛。本文将介绍几种最常用的AI模型&#xff0c;包括卷积神经网络&#xff08;CNN&…...

【Elasticsearch】配置分片分配到指定节点

配置分片分配到指定节点 参考文章&#xff1a;https://www.elastic.co/guide/en/elasticsearch/reference/current/shard-allocation-filtering.html 两种方式&#xff1a;根据节点属性分配和根据节点名称分配。 测试环境 tar xvf elasticsearch-7.17.25-linux-x86_64.tar.gz…...

【贵州省】乡镇界arcgis格式shp数据乡镇名称和编码内容下载测评

shp数据字段乡镇名称和编码&#xff0c;坐标是wgs84&#xff0c;数据为SHP矢量格式&#xff0c;下载下来直接加载进ArcMap即可使用 下载地址&#xff1a;https://download.csdn.net/download/zhongguonanren99/14928126...

EasyExcel上传校验文件错误信息放到文件里以Base64 返回给前端

产品需求&#xff1a; 前端上传个csv 或 excel 文件&#xff0c;文件共4列&#xff0c;验证文件大小&#xff0c;类型&#xff0c;文件名长度&#xff0c;文件内容&#xff0c;如果某行某个单元格数据验证不通过&#xff0c;就把错误信息放到这行第五列&#xff0c;然后把带有…...

Python 植物大战僵尸

文章目录 效果图项目结构实现思路源代码 效果图 项目结构 实现思路 下面是代码的实现思路&#xff1a; 导入必要的库和模块&#xff1a;首先&#xff0c;我们导入了Python的os、time库以及pygame库&#xff0c;还有植物大战僵尸游戏中用到的各个植物和僵尸的类。 初始化游戏和…...

继承(7)

大家好&#xff0c;今天我们继续来学习一下继承的知识&#xff0c;这方面需要大家勤动脑才能理解&#xff0c;那么我们来看。 1.9 protected关键字 在类和对象章节中&#xff0c;为了实现封装特性,java中引入访向限定符,主要限定:类或者类中成员能否在类外和其他包中被访问. …...

UML(统一建模语言)

目录 一、用例图&#xff08;Use Case Diagram&#xff09; 二、类图&#xff08;Class Diagram&#xff09; 2.1、泛化&#xff08;Generalization&#xff09; 2.2、实现&#xff08;Realization&#xff09; 2.3、关联&#xff08;Association&#xff09; 2.4、聚合&…...

【面试题】技术场景 7、定位系统瓶颈

系统瓶颈定位方法总述 面试官询问如何快速定位系统瓶颈&#xff0c;旨在考察线上调试经验。主要方法包括&#xff1a; 压测&#xff1a;在项目上线前找出系统瓶颈并修复。监控工具或链路追踪工具&#xff1a;项目上线后用于实时监控或评测找瓶颈。Arthas&#xff08;原阿尔萨…...

计算机网络之---传输层的功能

传输层的功能 传输层是 OSI&#xff08;开放系统互联&#xff09;七层模型中的第四层&#xff0c;位于应用层和网络层之间。传输层的主要作用是提供端到端的通信服务&#xff0c;确保数据在不同设备之间的可靠传输。它主要负责将来自上层&#xff08;应用层&#xff09;的数据拆…...

设计一个利用事务特性可以阻塞线程的排他锁,并且通过注解和 AOP 来实现

设计思路&#xff1a; 利用数据库表记录锁标识&#xff1a;通过唯一标识符&#xff08;如方法名 参数&#xff09;&#xff0c;我们可以在数据库中插入一条记录&#xff0c;表示当前方法正在执行。这条记录需要记录插入时间。 注解&#xff1a;通过注解标识哪些方法需要加锁&a…...

《安富莱嵌入式周报》第348期:开源低功耗测试仪,开源创意万用表,续航100-300小时,开源PCB电机,自制shell和网络协议栈,开源水培自动化系统

周报汇总地址&#xff1a;嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz! 视频版&#xff1a; https://www.bilibili.com/video/BV1Tzr9Y3EQ7/ 《安富莱嵌入式周报》第348期&#xff1a;开源低功…...

C#实现凸壳算法

凸壳计算代码: public static PointD[] calcConvexHull(PointD[] points) {// 按 x 坐标对点进行排序Array.Sort(points, (p1, p2) => p1.X.CompareTo(p2.X));// 创建下凸壳var lowerHull = new List<PointD>();foreach (var point in points){while (lowerHull.Co…...

轻量级适合阅读的优秀 C++ 开源项目

CTPL 这是一个现代简易版的、高效的C线程池库&#xff0c;代码行数500行左右。 代码示例&#xff1a; void first(int id) { std::cout << "hello from " << id << \n; } struct Second { void operator()(int id) const { std::cout << &q…...

数据结构:栈(Stack)和队列(Queue)—面试题(一)

目录 1、括号匹配 2、逆波兰表达式求值 3、栈的压入、弹出序列 4、最小栈 1、括号匹配 习题链接https://leetcode.cn/problems/valid-parentheses/description/ 描述&#xff1a; 给定一个只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff0c;] …...

20250110-System类

1. 定义 java不支持全局变量和方法&#xff0c;因此将与系统相关的重要方法和变量放在了一个统一的类中&#xff0c;即System类&#xff0c;其中所有的成员都是静态的。 2. System类中的方法 PS&#xff1a; System.out.print()&#xff0c;其中的out是System的静态变量&am…...

初识verilog HDL

为什么选择用Verilog HDL开发FPGA&#xff1f;&#xff1f;&#xff1f; 硬件描述语言&#xff08;Hardware Descriptipon Lagnuage&#xff0c;HDL&#xff09;通过硬件的方式来产生与之对应的真实的硬件电路&#xff0c;最终实现所设计的预期功能&#xff0c;其设计方法与软件…...

JavaSE——网络编程

一、InetAddress类 InetAddress是Java中用于封装IP地址的类。 获取本机的InetAddress对象&#xff1a; InetAddress localHost InetAddress.getLocalHost();根据指定的主机名获取InetAddress对象&#xff08;比如说域名&#xff09; InetAddress host InetAddress.getByNa…...

antd-design-vue1.7.8浏览器中使用

快速开始 引入js和css <link href"antd/antd.css" rel"stylesheet"> <script src"vue2/vue.js" type"text/javascript"></script> <script src"antd/antd.js" type"text/javascript">&…...

车载网络:现代汽车的数字心跳

在汽车领域&#xff0c;“智能汽车”一词毫不夸张。如今的汽车已不再是原始的机械工程&#xff0c;而是通过先进的车载网络无缝连接的精密数字生态系统。这些滚动计算机由复杂的电子控制单元(ECU)网络提供动力&#xff0c;ECU是负责管理从发动机性能到信息娱乐系统等一切事务的…...

SAP SD学习笔记27 - 贩卖契约(框架协议)2 - 基本契约 - 金额契约(价值合同)

上一章讲了贩卖契约&#xff08;框架协议&#xff09;的概要&#xff0c;以及贩卖契约中最为常用的 基本契约 - 数量契约。 SAP SD学习笔记26 - 贩卖契约(框架协议)的概要&#xff0c;基本契约 - 数量契约-CSDN博客 本章继续讲SAP中的内容&#xff1a; - 基本契约 - 金额契约…...