如何使用Postman做接口自动化测试及完美的可视化报告?

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

1、Jenkins简介

Jenkins是一个开源的软件项目,是基于java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

2、Jenkins环境准备

Jenkins需要依赖JDK,所以先安装JDK1.8

Jenkins安装包:https://jenkins.io/zh/download/

我这边选择的安装的是war包,点击红框中部分下载

Tomcat安装包:https://tomcat.apache.org/

我用的是tomacat8,下载tar.gz结尾的文件

3、基于tomcat安装Jenkins

解压Tomcat压缩包

将下载的apache-tomcat-8.5.69.tar.gz文件上传到服务器,然后解压

复制代码
[root@i-8a707031 tomcat]# tar -zxvf apache-tomcat-8.5.69.tar.gz
[root@i-8a707031 tomcat]# ll
total 10320
drwxr-xr-x 9 root root     4096 Jul 10  2021 apache-tomcat-8.5.69
-rw-r--r-- 1 root root 10561246 Jul 10  2021 apache-tomcat-8.5.69.tar.gz

上传jenkins.war到apache-tomcat-8.5.69/webapps目录下

复制代码
[root@i-8a707031 webapps]# pwd
/data/thirdAssembly/tomcat/apache-tomcat-8.5.69/webapps
[root@i-8a707031 webapps]# ll
total 72544
drwxr-x--- 15 root root     4096 Jul 10  2021 docs
drwxr-x---  7 root root     4096 Jul 10  2021 examples
drwxr-x---  6 root root     4096 Jul 10  2021 host-manager
drwxr-x--- 11 root root     4096 Jul 12  2021 jenkins
-rw-r--r--  1 root root 74258848 Jul 12  2021 jenkins.war
drwxr-x---  6 root root     4096 Jul 10  2021 manager
drwxr-x---  3 root root     4096 Jul 10  2021 ROOT

启动tomcat

复制代码
[root@i-8a707031 bin]# ll
total 872
-rw-r----- 1 root root  36285 Jul  1  2021 bootstrap.jar
-rw-r----- 1 root root  16840 Jul  1  2021 catalina.bat
-rwxr-x--- 1 root root  25373 Jul 13  2021 catalina.sh
-rw-r----- 1 root root   1664 Jul  1  2021 catalina-tasks.xml
-rw-r----- 1 root root   2123 Jul  1  2021 ciphers.bat
-rwxr-x--- 1 root root   1997 Jul  1  2021 ciphers.sh
-rw-r----- 1 root root  25357 Jul  1  2021 commons-daemon.jar
-rw-r----- 1 root root 207420 Jul  1  2021 commons-daemon-native.tar.gz
-rw-r----- 1 root root   2040 Jul  1  2021 configtest.bat
-rwxr-x--- 1 root root   1922 Jul  1  2021 configtest.sh
-rwxr-x--- 1 root root   9100 Jul  1  2021 daemon.sh
-rw-r----- 1 root root   2091 Jul  1  2021 digest.bat
-rwxr-x--- 1 root root   1965 Jul  1  2021 digest.sh
-rw-r----- 1 root root   3460 Jul  1  2021 setclasspath.bat
-rwxr-x--- 1 root root   3708 Jul  1  2021 setclasspath.sh
-rw-r----- 1 root root   2020 Jul  1  2021 shutdown.bat
-rwxr-x--- 1 root root   1902 Jul  1  2021 shutdown.sh
-rw-r----- 1 root root   2022 Jul  1  2021 startup.bat
-rwxr-x--- 1 root root   1904 Jul  1  2021 startup.sh
-rw-r----- 1 root root  51149 Jul  1  2021 tomcat-juli.jar
-rw-r----- 1 root root 425741 Jul  1  2021 tomcat-native.tar.gz
-rw-r----- 1 root root   4574 Jul  1  2021 tool-wrapper.bat
-rwxr-x--- 1 root root   5540 Jul  1  2021 tool-wrapper.sh
-rw-r----- 1 root root   2026 Jul  1  2021 version.bat
-rwxr-x--- 1 root root   1908 Jul  1  2021 version.sh
[root@i-8a707031 bin]# sh startup.sh

浏览web初始化jenkins http://IP:8080/jenkins/login

根据页面指示vi复制文件中的密码后输入 选择安装推荐的插件然后等待安装完成

创建用户

点击保存

在插件中心安装插件Allure #注意:如果插件安装失败,进入插件管理点高级选项下替换升级url为:将升级站点URL修改为:http://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

Node.JS 提供了一个 newman 模块工具,它可以帮助我们在非 UI 模式下运行Postman的用例。allure将测试报告可视化。

1.下载nodejs

复制代码
#下载到/usr/local/src目录下
[root@in src]# cd /usr/local/src/
[root@in src]# wget https://nodejs.org/dist/v16.15.1/node-v16.15.1-linux-x64.tar.xz

2.解压、重命名

复制代码
#将node-v16.15.1-linux-x64.tar.xz文件解压成node-v16.15.1-linux-x64.tar
[root@in src]# xz -d node-v16.15.1-linux-x64.tar.xz
#解压node-v16.15.1-linux-x64.tar,解压到/usr/local目录下
[root@in src]# tar -xf node-v16.15.1-linux-x64.tar -C /usr/local
#修改解压后的目录名称为node
[root@in src]# mv /usr/local/node-v16.15.1-linux-x64 node

3.创建node和npm命令的软链接

创建软链接的目的是为了可以在任意目录下都能适用node和npm命令

复制代码
#在/usr/bin目录下为/usr/local/node/bin/node文件创建软链接
[root@in src]# ln -s /usr/local/node/bin/node /usr/bin/node
#在/usr/bin目录下为/usr/local/node/bin/npm文件创建软链接
[root@in src]# ln -s /usr/local/node/bin/npm /usr/bin/npm

4.验证node和npm是否安装成功

如果能查到版本号就证明安装成功了

复制代码
[root@in node]# node -v
v16.15.1
[root@in node]# npm -v
8.11.0

5.安装newman命令

复制代码
#--registry=https://registry.npm.taobao.org(如果下面命令安装不成功在尾部加上淘宝镜像)
[root@in src]# npm install -g newman

6.创建newman命令的软链接

newman命令默认是安装在/usr/local/node/bin目录下的,创建软链接的目的是为了可以在任意目录下都能使用newman命令

复制代码
#在/usr/bin目录下为/usr/local/node/bin/newman文件创建软链接
[root@in src]# ln -s /usr/local/node/bin/newman /usr/bin/newman

7.验证newman是否安装成功

如果能查到newman的版本就证明安装成功了

复制代码
[root@in node]# newman -v
5.3.2

8.安装allure插件

这个插件的作用是可以生成可视化的测试报告

复制代码
# 下载地址:https://github.com/allure-framework/allure2/releases
# 下载zip包,下载好后上传到/usr/local/src/目录下然后解压
[root@in src]# ll
总用量 19532
drwxr-xr-x. 6 root root       57 5月  23 11:39 allure-2.18.1
-rw-r--r--. 1 root root 19997866 6月  28 13:55 allure-2.18.1.zip
drwxr-xr-x. 4 root root       41 2月  18 14:02 rh
# 创建软链接
[root@in src]# ln -s /usr/local/src/allure-2.18.1/bin/allure /usr/bin/allure
# 验证
[root@in src]# allure --version
2.18.1
# 再安装 newman-reporter-allure 下面命令执行不通时尾部加上淘宝镜像--registry=https://registry.npm.taobao.org
[root@in src]# npm install -g newman-reporter-allure

1、选择全局配置

2、配置allure插件的安装路径,然后保存

3、点击新建item

4、配置

5、在描述里写描述项目是做什么的,其余不用选

6、按下图勾选

7、点击添加构建选择Execute shell

8、在下列框中写入shell语句(是一整条语句,为了方便说明把拆开说了)

复制代码
newman run 
# 该部分是postman测试用例的json(手动导入到服务器对应路径中,可自定义路径)
/data/thirdAssembly/jenkins/iptv_search/Case/Reply_Reconsitution.postman_collection.json -e 
# 该部分是postman局部变量的json(手动导入到服务器对应路径中,可自定义路径)
/data/thirdAssembly/jenkins/iptv_search/Environment/iptv_search.postman_environment.json 
-r allure --reporter-allure-export 
# 该部分是生成报告的路径 "/root/.jenkins/workspace"这部分是写死的项目的根目录,所有项目都在这个目录下,下一级就是项目的文件夹名称等于项目名称,在下面就是后面需要用到生成报告的相对路径"/target/XML"
/root/.jenkins/workspace/iptv_search/target/XML

9、点击增加构建后步骤选择Allure Report

10、按如下添加后保存(这里的路径和第8步骤中的shell命令中的保持一致就可)

1、在首页选中刚刚创建的项目

2、进入项目后点击立即构建

3、等待执行完成后点击allure report就可以看到执行用例结果

写在最后

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

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

相关推荐
代码山河3 小时前
Python就业方向全解析:后端、爬虫、数据分析、AI你选哪个?
python·学习·架构·教程·面向对象·项目
紧跟先前的步伐3 小时前
Go AI Agent 实战 24|工具系统工程化收尾与阶段验收
人工智能·ai·golang·1024程序员节
在世修行3 小时前
智学文枢:题目流水线
python·多线程·状态机·pyside
梯度下降者4 小时前
零基础入门Python 爬虫
爬虫·python·数据分析·入门指南·webcrawler
吠品4 小时前
智谱开源 ZCode 之后,真正的考试才开始
单片机·嵌入式硬件·1024程序员节
光影6274 小时前
Unittest单元测试基础速记
测试工具·单元测试·json·测试覆盖率
日日大王学编程4 小时前
#Feed 流项目复盘:Redis 时间线缓存与 Outbox 消息可靠性设计
golang·1024程序员节
“AI国潮设计-小江”5 小时前
【AIGC实战】Python+Stable Diffusion打造“英歌舞财神”IP,解锁“马到成功”等爆款情绪营销文案设计
开发语言·人工智能·python·prompt·aigc
benchmark_cc6 小时前
用 Python 拉 A 股全市场实时快照:Notebook 请求、结果校验与易错点
python·数据分析·pandas·量化交易·股票数据·quantdash
伞伞悦读6 小时前
【第70期】Adam二阶矩不是方差:偏差校正、动量与AdamW完整实验
python