首页 > 其他分享 >Jenkins 踩坑 (四)|基于接口自动化测试完成 Jenkins+GitHub+Allure 的结合

Jenkins 踩坑 (四)|基于接口自动化测试完成 Jenkins+GitHub+Allure 的结合

时间:2022-09-22 14:13:59浏览次数:93  
标签:GitHub Allure job git 构建 Jenkins

一、前提

  1. 关于使用 Jenkins 创建 job 完成自动化测试,核心在于项目的拉取和执行,至于 job 的创建大同小异,需要了解的可以参考文章:[Jenkins之job创建、参数化与定时构建以及时区偏差填坑]

  2. 另外还需要的就是执行机的环境(以 GitHub 拉取项目为例),需要具体细节操作可自行百度 Google 或参考文章:[Jenkins如何管理、配置、运行node节点,用slave进行分布式运行]

  • 需要配置Java运行环境(我用的是 jdk1.8)

  • 需要有maven环境

  • 需要有git环境

  • 需要将git的公钥加入 GitHub 的SSH key

  • 已经存在一个接口自动化测试的项目

下面就仅重点介绍需要注意的点。

二、job 创建

2.1 源码管理

1)新建 job 后,在【源码管理】中选中 Git,Repository URL中填入 GitHub 中的项目地址:

 

2)在【Credentials】中我们需要 Git 的认证才可以使用 git 去拉取代码,点击【添加】,这里选择的是 SSH 的方式。

【Username】中填写你 Git 的用户名,可以使用git config user.name命令查看。

 
$ git config user.namemygitUsername
      复制代码  

【Private Key】中填入你 Git 的私钥,可以使用cd ~/.ssh进行查找,将id_rsa中的内容填入即可。

 
$ cd ~/.ssh$ lsid_rsa        id_rsa.pub  known_hosts
      复制代码  

2.2 构建

在构建中我们选择以 shell 的方式执行:

  • . ~/.bash_profile是为了引入我的环境变量配置

  • cd …ApiTest是为了进入我设置的项目目录下

  • mvn clean install -Dtest=SearchTest目的是为了使用maven制定执行 SearchTest

     

踩坑时刻:

这里有一个坑需要注意,如果是用docker启用的Jenkins服务,在你创建完 job 直接在 master 上构建后,会报找不到你写的这些 shell 命令的错误,因为你这个服务时跑在容器里的,而这些 shell 命令是需要在容器外执行的,解决方法有两种:

  1. 重新构建一个带有环境的 Jenkins 变量

  2. 将 master 创建成一个 slave,在 slave 节点上运行即可

我使用的是第二种方法:

创建好 slave 后在 job 中设置运行在 master_slave 节点上:

2.3 构建结果

执行构建,在控制台输出中查看 log,BUILD SUCCESS!构建成功,用例执行了 11 个,失败了 3 个。

三、Jenkins+Allure

3.1 安装配置

关于 Allure2 报告不是本文的重点,所以在这里就不在赘述了,需要的小伙伴可以自行查阅资料。

1)插件安装,先在 Jenkins 的【插件管理】中搜索安装 Allure 插件,如下:

2)回到 job 中,在【构建后的操作】中选择Allure Report,填入 allure-result 的路径

踩坑时刻:

这里 Results 的路径要注意填写你实际的存放路径,Jenkins例子和网上很多文章都直接写了填写target/allure-results,如果你的路径不对,肯定就找不到数据;比如我这里在前面已经设置了一个项目子目录,所以要填入子目录的路径。

3.2 构建结果

再次执行构建,查看结果:

  • 构建完成后我们可以看到已经有了 allure 报告的标识

 

  • 点击查看,报告完美展示

 

以上,欢迎大家一起交流探讨。

https://qrcode.ceba.ceshiren.com/link?name=article&project_id=qrcode&from=infoQ&timestamp=1662452338=xueqi

 

标签:GitHub,Allure,job,git,构建,Jenkins
From: https://www.cnblogs.com/ceshi2016/p/16719042.html

相关文章

  • jenkins 设置并行执行同一个job
    1.修改Node配置中的#ofexecutors#ofexecutors: 最大同时构建数量,  用来指定同一时间最多能跑的job数量.  2.勾选job中的配置,使其可以并行测试Executeconcur......
  • Docker安装Jenkins
    Docker安装Jenkins目录Docker安装Jenkins准备工作下载Jenkins镜像开始安装创建需要挂载的本地文件夹创建并启动Container打开jenkens安装插件创建用户准备工作下载Jenk......
  • Jenkins 20220921笔记本1
                            ......
  • Github发布了Electron 1.0版本
    Github称,Electronapp就像一个微型的网页浏览器一样,具有与本地文件系统交互的功能,网页浏览器已经打包在了app中。这样,应用就可以一次编写,在各个操作系统上运行。Electro......
  • Git将本地仓库上传到github
    这里采用简单的描述,提供两种方式:一、连接本地文件夹和远程仓库1.使用pull——拉取github项目文件(1)进入到自己要上传的文件夹内部,然后gitbashhere(2)输入命令gitini......
  • 【整理】jenkins插件安装的几种方式(在线安装、离线安装)
    整理参考:https://blog.csdn.net/qq_35472206/article/details/1260495741、在线安装:安装jenkins后,初次启动的时候安装插件安装推荐的插件,或者选择插件安装 2、在线安......
  • github-file-upload 配置方法
    token(这是个无效的,你需要自己获取):ghp_6qfPsQlj2WxHmhOAluO7ZsT7NAc5NX16xzyQ 如何获取?用户名/仓库名:10086/typora  如何获取?>>存放分支: master   ......
  • 一、Jenkins+jmeter+ant接口自动化测试(Jenkins传参给Jmeter)
    1,在build.xml文件中定义需要Jenkins传给Jmeter的参数<propertyname="script_name"value="*.jmx"></property>#需要压测的脚本<propertyname="thread_num"value="1......
  • 【安全测试-fortify源码扫描】如何集成jenkins自动执行源码扫描
    一,效果如下点击选择文件,上传需要扫描的code压缩包点击开始构建,开始源码扫描  二、如何取测试报告工作空间只保留最新一次的报告(同时,此处做了备份处理,在executesh......
  • 【Vue项目实践】套用github 上的项目运行 electron + vite + vue3
    最终版gitclonehttps://gitee.com/mywink/vite-electron.gityarnyarnbuildyarndev从github上下载这个项目,运行,就得到了electron桌面版的项目,采用vue3来......