✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
🎯 你正在阅读「接口测试从入门到跑路」系列文章 🎯✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
🔥 弹简特 个人主页
❄️ 个人专栏直通车:
✨ 靠热爱去书写自己,靠勇敢去书写生活!
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
🌟 博主简介:

文章目录:
- 前言
- 一、安装JDK以及配置JDK的环境变量
-
- 1、JDK的下载和配置
-
- 1.1JDK下载
- 1.2配置环境变量,步骤如下👇
- [1.3 如何验证是否安装和配置成功?](#1.3 如何验证是否安装和配置成功?)
- 二、下载Jenkins以及Jenkins的安装
-
- [1.1 下载](#1.1 下载)
- [1.2 启动服务并访问](#1.2 启动服务并访问)
- [1.3 初始化安装插件](#1.3 初始化安装插件)
- [1.4 修改密码👤](#1.4 修改密码👤)
- [1.5 修改插件的下载位置(可选)](#1.5 修改插件的下载位置(可选))
-
- 1). 停止当前运行的 Jenkins. 停止当前运行的 Jenkins)
- 2). 迁移原有数据(可选). 迁移原有数据(可选))
- 3). 启动时指定新的家目录. 启动时指定新的家目录)
- 三、Postman的CLI命令+Jenkins接口自动化持续集成
-
- 1、CLI是什么
- 2、CLI命令如何和Jenkins集成
-
- [2.1 第一步:把环境变量改成:集合变量](#2.1 第一步:把环境变量改成:集合变量)
- [2.2 第二步:通过Jenkins来执行CLI命令](#2.2 第二步:通过Jenkins来执行CLI命令)
- [2.3 第三步:在Postman里面查看报告](#2.3 第三步:在Postman里面查看报告)
- [2.4 在Jenkins中查看控制台](#2.4 在Jenkins中查看控制台)
- [2.5 总结](#2.5 总结)
- 四、Newman+Allure+Jenkins接口自动化持续集成
-
- 1、介绍
- 2、通过Newman执行测试用例
-
- [2.1 什么是Newman](#2.1 什么是Newman)
- [2.2 Newman的运行Postman中测试用例的命令](#2.2 Newman的运行Postman中测试用例的命令)
-
- 1)基本命令格式
- 2)常见参数选项
-
- [`-e` 指定环境变量文件(environment, 环境变量文件)](#
-e指定环境变量文件(environment, 环境变量文件)) - [`-g` 指定全局变量文件(globals, 全局变量文件)](#
-g指定全局变量文件(globals, 全局变量文件)) - [`-d` 指定数据文件(data, 数据文件)](#
-d指定数据文件(data, 数据文件)) - [`-n` 指定循环次数(iteration-count, 循环次数)](#
-n指定循环次数(iteration-count, 循环次数)) - [`-r` 生成HTML报告(reporters, 报告生成器)](#
-r生成HTML报告(reporters, 报告生成器)) - [`-r` 生成Allure报告(reporters, 报告生成器)](#
-r生成Allure报告(reporters, 报告生成器))
- [`-e` 指定环境变量文件(environment, 环境变量文件)](#
- 3)组合多个参数的例子
- 3、接口自动化持续集成步骤
-
- [3.1 第一步:把环境变量改成集合变量](#3.1 第一步:把环境变量改成集合变量)
- [3.2 第二步:从Postman中导出测试用例(项目中所有的接口)和全局变量等文件](#3.2 第二步:从Postman中导出测试用例(项目中所有的接口)和全局变量等文件)
- [3.3 第三步:安装Newman](#3.3 第三步:安装Newman)
- [3.4 第四步:安装Allure报告](#3.4 第四步:安装Allure报告)
- [3.5 第五步:通过newman执行测试用例并且生成报告](#3.5 第五步:通过newman执行测试用例并且生成报告)
- [3.6 第六步:通过Jenkins执行测试用例并且生成Allure和实现持续集成](#3.6 第六步:通过Jenkins执行测试用例并且生成Allure和实现持续集成)
-
- 1)打开我们的Jenkins新建一个项目
- 2)配置1:Allure插件配置
-
- [a、 点击设置](#a、 点击设置)
- b、点击全局工具配置
- [c、往下翻找到【Allure Commandline 安装】](#c、往下翻找到【Allure Commandline 安装】)
- [d、点击【+新增Allure Commandline】然后起一个别名](#d、点击【+新增Allure Commandline】然后起一个别名)
- e、然后他问你是否需要自动安装,那把那个√给去掉,我们不需要自动安装,因为我们的本地已经装好了。
- f、在本地将我们的allure安装路径给复制上去,并保存
- 3)配置2:配置工作空间
- 3)配置3:告诉Jenkins生成Allure报告的命令
-
- [a、选择【增加构建步骤】-- 选择批量执行目录](#a、选择【增加构建步骤】-- 选择批量执行目录)
- b、粘贴你的命令
- 3)配置4:配置定时执行
- 3)配置5:配置构建之后的操作
- 4、查看报告
-
- [4.1 在Jenkins中点击项目](#4.1 在Jenkins中点击项目)
- [4.2 点击Allure Report](#4.2 点击Allure Report)
- [4.3 得到的Allure Report如下](#4.3 得到的Allure Report如下)
- 五、写在最后
前言
学会 Postman 接口测试后,怎么让它自动跑?这篇带你用 Jenkins 实现持续集成。从 JDK 安装、Jenkins 部署,到 CLI 命令集成、Newman + Allure 生成精美报告,最终实现定时无人值守执行。全程截图,零基础也能跟着搭起来。
一、安装JDK以及配置JDK的环境变量
为什么需要去下载JDK?因为Jenkins他是一个Java项目,需要依赖的是JDK,所以你要去下载JDK才行的,而且Jenkins更新版本很快,你的JDK需要多少版本具体都得去看官网的要求。
此处我们介绍的是JDK21的安装,因为我们博客中介绍的是Jenkins版本是2.555.1,这个版本要求JDK21才行,老铁们下载的时候记得下载最新的就行~
1、JDK的下载和配置
1.1JDK下载
1、首先去官网下载我们的jdk,对于JDK的配置演示我们使用的是jdk21
JDK21的官网👉:https://www.oracle.com/cn/java/technologies/downloads/#java21
jdk的下载如果是.exe那么其实我们直接一路next即可,如果是压缩包,那么找一个非中文路径解压缩即可使用

1.2配置环境变量,步骤如下👇
配置环境变量:
我的电脑右键属性-->搜索环境变量--->高级-->环境变量-->系统变量:
1)、新建:
变量名:JAVA_HOME
变量值:你的jdk所在的具体路径
注意:变量值是JDK的具体路径,需要根据实际情况取值。

2)、新建:
变量名:
bash
CLASSPATH
变量值:
bash
.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;
注意:变量值前后的.;等符号都不能少

3)、编辑:
在PATH最后面添加:%JAVA_HOME%\bin
注意:PATH路径中那些原有的值千万不能删除,我们在后面新建一个即可。



1.3 如何验证是否安装和配置成功?
1、首先win+r并输入cmd

2、在dos中输入javac和java -version验证。


二、下载Jenkins以及Jenkins的安装
具体的更多细节参考之前的博客👉https://blog.csdn.net/2301_81982617/article/details/160418664?spm=1011.2415.3001.10575&sharefrom=mp_manage_link
1.1 下载
官网地址: https://www.jenkins.io/download/
同时不想下载的老铁我已经将资源上传可以去直接下载:Jenkins的war包
Jenkins是一个web项目


下载之后我放在D盘

兼容性问题:由于Jenkins是一个javaweb项目,那么得需要jdk,建议jdk要17及以上。
1.2 启动服务并访问
启动
对一个java项目,我们如何去启动呢?它是一个war包,那么我只需要运行这个war包就行。
1)首先得看你的jdk有没有下载配置好

java项目的运行需要的是jdk,这一点很重要,没有java环境的老铁得去配置一下
2)运行war包,命令:
- 如果没有配置JDK环境变量:
"jdk的bin目录+java" -jar war包所在全路径+war包名称(带后缀) - 如果配置了JDK环境变量:直接用
java -jar war包所在全路径+war包名称(带后缀)完全可以运行,不需要加任何额外的路径、classpath 等
a. 没有配置JDK环境变量
比如我自己的是放在D盘,所以启动命令java -jar D:\jenkins.war

3)那么我就将jdk21下载好了,放在如下目录D:\java\Javajdk\jdk-21

4)去bin目录找到java命令

5)然后执行"jdk21的bin目录+java" -jar war包全路径+war包名称
比如我自己的是:"D:\java\Javajdk\jdk-21\bin\java" -jar D:\jenkins.war

b. 配置了JDK环境变量
如果有配置JDK环境变量的话,那么就不用上面那么麻烦,直接使用java -jar war包所在全路径+war包名称(带后缀),如下👇
bash
java -jar D:\jenkins.war

访问
如何访问呢?
浏览器输入访问地址:http://localhost:8080
初始化密码,你启动的时候他会给你显示。
用户名默认是admin
密码初始化的时候如下图:

1)输入URL访问:http://localhost:8080

2)会告诉你是否安装插件

1.3 初始化安装插件
首先第一次登录的时候可以选择推荐的

然后他就在下载

把上述的插件安装完毕之后,他会给你一个提示框,让你创建一个管理员用户👇
1.4 修改密码👤

如果你不想创建,你就直接点使用admin账户继续就行,如上图所示:
然后后面就直接点击继续


修改密码:如下所示

然后我们就输入自己的密码即可比如123456

修改密码之后重新登录:
用户名admin
密码123456

1.5 修改插件的下载位置(可选)
下载完插件之后,你会发现在你的c盘里面会多了一些目录,这些目录就是为我们放我们插件的创建的,那如果你c盘空间不够的话,我们是可以进行一个修改的。如何去修改呢?接下来就跟着我一步一步的去做就行。嗯,如果老铁们嫌麻烦的话,就可以不用管这个步骤。
1). 停止当前运行的 Jenkins
- 关闭运行
java -jar jenkins.war的命令行窗口(按Ctrl + C或直接关闭)。
2). 迁移原有数据(可选)
如果你已经使用过 Jenkins(创建了任务、安装了插件),需要把旧数据复制到新目录。
- 旧目录:
C:\Users\用户名\.jenkins - 新目录(例子):
D:\jenkins_home
操作:
- 在 D 盘创建文件夹
jenkins_home - 将
C:\Users\用户名\.jenkins下的所有内容 复制到D:\jenkins_home(包括config.xml、plugins、workspace等)
如果 Jenkins 是全新安装(刚跑通初始化),可以不用复制旧数据,直接让 Jenkins 在新目录重新初始化。
3). 启动时指定新的家目录
方法:修改系统环境变量(永久)
- 右键"此电脑" → 属性 → 高级系统设置 → 环境变量
- 在"系统变量"或"用户变量"中新建:
- 变量名:
JENKINS_HOME - 变量值:
D:\jenkins_home
- 变量名:
- 确定后重启 cmd,直接运行
"D:\java\Javajdk\jdk-21\bin\java" -jar D:\jenkins.war就会自动使用该目录。


Jenkins 现在已经成功将家目录迁移到 D:\jenkins_home
三、Postman的CLI命令+Jenkins接口自动化持续集成
1、CLI是什么
CLI是什么,他是我们之前第2篇博客里面讲批量运行的命令:

通过这两个命令就能执行我们的项目。
2、CLI命令如何和Jenkins集成
2.1 第一步:把环境变量改成:集合变量
为什么我们需要把环境变量改成集合变量?
因为通过jenkins去执行CLI是没办法切换环境
回顾之前第二篇博客中的内容:环境变量
我们之前设计了一个环境变量,如下👇

而我们现在需要将它变成集合变量,如何做呢?如下步骤所示:
a、单击项目

b、选择variables

c、将刚才的环境变量中的测试环境拷贝过来变为集合变量,不然他去切换环境了,因为Jenkins做不到

2.2 第二步:通过Jenkins来执行CLI命令
1)首先登录Jenkins


2)新建一个项目
a、点击新建

b、起一个名字

3)为项目做一些配置
我们只需要做两个配置就行了👇
第一个配置:构建触发器
选择一个日程表,代表你什么时候去执行,一般我们用5个星号*****,这5个星号从右到左,依次是年月日时分。
java
* * * * *
分 时 日 月 年
操作如图:

第二个配置:增加构建步骤
a、点击【增加构建步骤】

b、选择批处理命令

c、把Postman中的CLI命令拷贝到里面,步骤如下:
(1) 右键项目-选择Run

(2)选择CLI

(3)创建密钥


(4)将这个命令拷贝出来如下:

bash
postman login --with-api-key PMAK-69f9ad271c0fb100019d424e-5b2bab9cffbb68499be4306c47dc1e3b5e
postman collection run 48440182-9bf7d879-6933-48d9-ae38-30a51a9d15ac -e 48440182-41a433f1-2c08-4503-82b4-97bd2d6504de
(5)将命令拷贝到我们的Jenkins批处理执行命令中

(6)点击保存

保存之后的页面如下:

点击回到首页,也可以看到


此时如果想要继续修改,那么就如下

比如我们把定时器改为55吧


现在我们的时间是48分,我们做了如上的配置之后,只要你的Jenkins服务器没有关闭,那么每个小时的50分,Jenkins都会在后台自动的去为我们执行这些接口,我们什么都不用管,我们唯一要做的是去Postman里面去查看他的执行报告。
2.3 第三步:在Postman里面查看报告
1)点击项目

2)选择runs

3)等定时器到达我们设置的55分就会自动执行测试接口

等到55分我们点开此处查看报告:


2.4 在Jenkins中查看控制台
a、点击项目

b、找打控制台输出

c、查看对应的控制台

2.5 总结
经过上述的捣鼓,我们发现Postman的CLI命令+Jenkins接口自动化持续集成有一个很重要的特点:非常适合敏捷开发中的测试用例快速迭代。
因为我们什么都不用管,我们只要去改我们的测试用例就行了,到点它就会自动执行,执行完之后,我们在Postman里面去查看结果。
四、Newman+Allure+Jenkins接口自动化持续集成
1、介绍
上述我们CLI+Jenkins的方式生成的报告是在Postman中查看的,相对来说报告的样式是比较丑的。
于是我们就可以使用Newman+Allure+Jenkins持续集成,生成比较美观的Allure报告,但是有一个缺点 : 就是每一次都需要你去Postman里面导出一些文件,比如测试用例、全局变量、环境变量等。
那么,我们的项目是使用什么来执行的呢?你把测试用例那些接口全部搞好了,谁去执行这些接口。
我们使用的是Newman来执行,那么接下来就介绍Newman👇
2、通过Newman执行测试用例
注意⚠️
我们在上面说过,使用该种方法,需要你去Postman里面去导出一些文件,而在我们导出这些文件之前,一定要先把这些文件给保存了,如图所示,当一个红点点就代表没有保存。
此时你必须得按ctrl+s,让他保存之后就不会出现这个点点,那就代表已经保存成功了
2.1 什么是Newman
Newman 是一个可以在命令行(终端)中使用的工具,它的主要作用是用来运行 Postman 中创建的"集合"(Collection)。
具体拆解一下:
- Postman 是一个图形化工具,用来测试 API(接口)。你可以在 Postman 界面里创建一个"集合"(比如一组 HTTP 请求:GET、POST 等),并编写测试脚本。
- Newman 是 Postman 官方提供的命令行工具。它不依赖于图形界面,只需要在终端输入命令,就能自动执行你在 Postman 里创建好的那个集合。
- "执行 Postman 中命令" 指的是运行集合里的所有请求以及相关的测试脚本,并输出结果(比如哪些请求成功、哪些断言失败)。
为什么需要 Newman?
- 方便集成到 CI/CD 流水线(比如 Jenkins、GitLab CI)中,实现 API 自动化测试。
- 不需要打开 Postman 图形界面,可以在服务器、云端等无图形环境运行。
2.2 Newman的运行Postman中测试用例的命令
1)基本命令格式
bash
newman run 集合文件.json [参数选项]
说明:newman run 后面必须跟一个 Postman 集合文件(我的集合.json),可以是本地文件路径,也可以是一个 URL。
2)常见参数选项
-e 指定环境变量文件(environment, 环境变量文件)
bash
newman run 我的集合.json -e 我的环境.json
说明:-e 后面跟环境变量文件(如 我的环境.json)
-g 指定全局变量文件(globals, 全局变量文件)
bash
newman run 我的集合.json -g 全局变量.json
说明:-g 后面跟全局变量文件(如 全局变量.json)
-d 指定数据文件(data, 数据文件)
bash
newman run 我的集合.json -d 数据.csv
说明:-d 后面跟数据文件(如 数据.csv,也可以是 .json)
-n 指定循环次数(iteration-count, 循环次数)
bash
newman run 我的集合.json -n 5
说明:-n 后面跟循环次数(数字)
-r 生成HTML报告(reporters, 报告生成器)
生成简单的HTML报告参数固定写法:-r html --reporter-html-export
bash
newman run 我的集合.json -r html --reporter-html-export 报告.html
说明:
-r后面跟报告生成器(html表示生成 HTML 报告)--reporter-html-export后面跟 HTML 报告文件名 (如报告.html)
-r 生成Allure报告(reporters, 报告生成器)
生成美观的Allure报告参数固定写法:-r allure --reporter-allure-export
bash
newman run 我的集合.json -r allure --reporter-allure-export allure结果文件夹
说明:
-r后面跟报告生成器(allure表示生成 Allure 报告)--reporter-allure-export后面跟 文件夹名 (如allure结果,Newman 会将报告文件生成到该文件夹内)
3)组合多个参数的例子
bash
newman run 我的集合.json -g 我的全局变量.json -n 3 -r html --reporter-html-export 报告.html
我的集合.json:要运行的 Postman 集合文件(要运行的项目中的所有接口)-g 我的全局变量.json:指定全局变量文件(与-e的区别是全局变量在多个环境间共享,优先级低于环境变量)-n 3:循环 3 次-r html --reporter-html-export 报告.html:生成 HTML 报告,保存为文件报告.html
bash
newman run 我的集合.json -g 我的全局变量.json -n 3 -r allure --reporter-allure-export allure结果
我的集合.json:要运行的 Postman 集合文件(要运行的项目中的所有接口)-g 我的全局变量.json:指定全局变量文件-n 3:循环 3 次-r allure --reporter-allure-export allure结果:生成 Allure 报告,所有报告文件保存到allure结果文件夹内
3、接口自动化持续集成步骤
3.1 第一步:把环境变量改成集合变量
不管你用哪个方式,第1步得先把环境变量变成集合变量,之前你设置过的环境变量,就是说要把它变成集合变量啦,如果你没设置过,那你就去加所需的集合变量即可。
为什么呢?我们要用Newman去执行Postman里面的接口的时候,由于执行之前你得把一些文件导出来,比如:集合变量,环境变量,全局变量等等。如果你把环境变量都变成集合变量的话,那这个环境变量你就不用导出来了,少导一个文件。
我们之前的博客中,唯一设置过一次环境变量,就是在处理开发环境和测试环境那里,同时呢,我们在上面的Postman的CLI命令+Jenkins接口自动化持续集成中已经将环境变量变为集合变量了。

3.2 第二步:从Postman中导出测试用例(项目中所有的接口)和全局变量等文件
首先我们肯定是要导出测试用例的,然后对于变量那些,如果你有全局变量你就导出来,如果你是环境变量,那你也导出环境变量,如果你做数据驱动,那你把数据驱动文件弄出来(这个自己写的不用导出来,具体可看本系列的第三篇博客)。
1)导出测试用例(本项目中所有的接口)
首先比如我在E盘新建了一个空文件夹如下👇

a、在Postman中点击项目右侧的【... 】


b、保存

2)导出全局变量(如果有)
怎么做?如图所示:

选择全局变量

有你就导出来

我们本次的变量全部都设置成了集合变量,供本项目共用,所以没有搞成全局变量,因此呢全局变量这里啥也没有,如果有的话你可以导出来。
3)导出环境变量(如果有,我们本次不介绍,但是流程都一样的)

3.3 第三步:安装Newman
注意:newman需要node.js来安装
所以我们得先下载node.js
-
安装 Node.js
从官网https://nodejs.org/en/下载安装包,一直点"下一步"就行。装完 Node.js 后,
npm命令会自动可用。 -
验证 Node.js
打开 DOS(命令提示符),输入
node回车,如果进入>提示符就说明成功。按Ctrl+C两次退出。或者更简单用
node -v查看版本号。

-
安装 Newman
npm install -g newman(-g表示全局安装,这样在任何目录都能用)

-
验证 Newman
newman -v显示版本号,比如6.2.2

3.4 第四步:安装Allure报告
Allure也是需要依赖JDK的,但是我们上面已经装过了,这里就不用管。
1)下载
下载地址如图

如果不想下载的老铁直接在我的资源里面免费获取👉Allure安装包
版本要求:2.24以上


2)解压


3)配置环境变量

验证是否成功:

3.5 第五步:通过newman执行测试用例并且生成报告
1)打开DOS窗口,进入我们导出的测试用例所在目录

2)输入Newman命令生成html报告
命令
bash
newman run collection.json -r html --reporter-html-export index.html
出现问题

问题原因以及解决
错误原因是:Newman 从某个版本开始,不再默认内置 HTML 报告器 ,需要单独安装 newman-reporter-html 这个包。
在命令行执行以下命令(安装 HTML 报告器):
bash
npm install -g newman-reporter-html
安装成功

重新运行

打开index.html报告


3)输入Newman命令生成美观的Allure报告
先安装Allure报告器
原因是:Newman 从某个版本开始,不再默认内置 Allure 报告器 ,需要单独安装 newman-reporter-allure 这个包。
在命令行执行以下命令(安装 Allure 报告器):
bash
npm install -g newman-reporter-allure

执行生成包的命令
bash
newman run collection.json -r allure --reporter-allure-export allure-results
结果

点开生成的目录看看


它生成的是一堆临时的json报告,这些JSON报告我们一般是通过Jenkins来查看的,所以接下来我们看第六步👇
3.6 第六步:通过Jenkins执行测试用例并且生成Allure和实现持续集成
1)打开我们的Jenkins新建一个项目


2)配置1:Allure插件配置
为什么需要做这一步?

步骤如下:
注意:由于Jenkins 我们的这个版本不断的在更新,所以到时候如果没有出现过如下所示的界面,那大家可以问AI。
a、 点击设置

b、点击全局工具配置

c、往下翻找到【Allure Commandline 安装】

d、点击【+新增Allure Commandline】然后起一个别名

e、然后他问你是否需要自动安装,那把那个√给去掉,我们不需要自动安装,因为我们的本地已经装好了。

f、在本地将我们的allure安装路径给复制上去,并保存

从这个过程我们也看到一个小规律,就是说你这些工具是需要下载到本地的,然后我们所谓的配置无非就是把本地的安装路径给配置上去而已,所以需不需要配置,就得看你这个工具是否需要下载。
3)配置2:配置工作空间
我们需要把我们导出collection.json项目所在的目录告诉Jenkins,
为什么需要做这一步?

步骤如下:
a、找到高级--选择使用自定义工作空间

b、告诉他你导出的项目目录

3)配置3:告诉Jenkins生成Allure报告的命令
为什么需要做这一步?如下图👇

那么,配置的步骤如下:
a、选择【增加构建步骤】-- 选择批量执行目录

b、粘贴你的命令

3)配置4:配置定时执行
为什么要做这个配置呢?你不是想让Jenkins为我们去执行项目吗?
那么你想让他什么时候实行,你得告诉他呀,如果你不告诉他,你就自己手动实行。
所以选择构建日程,告诉他什么时候执行

3)配置5:配置构建之后的操作
这步的作用是告诉他,我要的是Allure文档👇
a、找到构建后操作

b、选择Allure报告

最后点击保存

保存之后跳到这个页面:👇

回到首页就可以看到我们刚刚构建的项目了


4、查看报告
我们刚刚设计了定时器,那等到具体的时间之后,就会自动执行我们的接口,我们只需要去查看报告就行。

报告在哪里看呢?如下所示:
4.1 在Jenkins中点击项目

4.2 点击Allure Report

4.3 得到的Allure Report如下
此时你就看到我们如下的报告了👇

五、写在最后
🎯 看到这里,辛苦啦!歇一歇,喝口水,让眼睛放松一下
这篇笔记我写了很久,如果对你有哪怕一点点帮助,请点一下「关注」 。
后面我还会继续分享很多自学干货笔记,都是自己边学边总结的,依然会是零基础能看懂、每一步都截图的那种详细笔记 。
我是学生,没什么能送你的,只能保证每一篇都认真写、不藏私。
我能给的,就是一篇一篇亲手整理的、零基础也能看懂的干货笔记。
你的每一次关注,都是我继续写下去的动力。
谢谢你的时间,我们下一篇笔记见 👇
(如果这篇笔记有写错的地方,也请一定在评论区告诉我,我会第一时间修改)

下一篇见咯,兄弟们~~




