• docker部署的jenkins配置(接口自动化)


    前提:项目在jenkins容器内能独立运行

    一、jenkins汉化

    1.点击Manage Jenkins(系统管理),点击Plugins(插件)

    在这里插入图片描述

    2.安装Locale插件

    点击Available plugins(可用插件),输入Locale,勾选,点击安装,安装完成后,点击勾选空闲时重启jenkins
    在这里插入图片描述
    重启后,点击系统管理,点击系统配置
    在这里插入图片描述
    Ctrl+f搜索Locale,输入zh_CN,勾选,点击应用,点击保存
    在这里插入图片描述

    二、jenkins配置allure报告

    1.安装allure插件

    点击系统管理->插件管理
    在这里插入图片描述
    点击Available plugins(可用插件),输入:Allure,勾选,点击安装
    在这里插入图片描述
    安装完成,点击返回首页
    在这里插入图片描述

    2.配置

    系统管理->全局工具配置
    在这里插入图片描述

    点击新增
    在这里插入图片描述
    输入别名,点击应用,点击保存
    注意:Allure Commandline是专门解析Allure生成的json数据文件,然后生成Allure报告的插件
    在这里插入图片描述

    三、配置jenkins项目

    1.新建任务

    在这里插入图片描述

    2.创建项目

    输入项目名称,选择构建一个自由风格的项目,点击确定
    在这里插入图片描述

    3.源码管理

    点击Git
    在这里插入图片描述
    SSH地址
    在这里插入图片描述

    4.构建触发器

    ①触发远程构建
    在这里插入图片描述
    在浏览器请求:http://192.168.1.1:9000/job/API_automation/build?token=8888
    就会触发构建

    ②其他工程构建后触发
    在这个jenkins中其他项目构建完成后,触发这个项目
    ③定时构建
    在这里插入图片描述

    每隔15分钟构建一次:
    H/15 * * * *
    
    每隔5分钟构建一次
    H/5 * * * *
    
    每3个小时构建一次
    H H/3 * * *
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    ④GitHub hook trigger for GITScm polling(后端提交代码后发送请求到jenkins,jenkins收到请求后执行构建)
    1)点击插件管理
    在这里插入图片描述
    2)下载gitee插件
    在这里插入图片描述
    3)已经下载
    在这里插入图片描述
    4)项目-配置
    勾选Gitee webhook,其他保持默认
    在这里插入图片描述
    在这里插入图片描述
    点击生成webhook密码
    在这里插入图片描述
    jenkins配置完成,点击应用,保存
    5)配置gitee(配置后,模拟开发提交代码)
    在这里插入图片描述
    在这里插入图片描述
    注意:URL地址需要填写外网能够访问的jenkins地址,因为咱们装的是本地虚拟机,外网不可访问,所以需要进行内网穿透,这里推荐花生壳,下载地址:花生壳下载地址

    6)配置内网穿透(需要花6块钱,开通https)
    点击添加映射
    在这里插入图片描述
    选择https,选择外网域名,填写内网IP和端口
    在这里插入图片描述
    不知道jenkins的IP地址的可以看这里,注意:不要把后面的内容写上,只写IP和端口即可
    在这里插入图片描述
    其他保持默认,点击确定
    在这里插入图片描述
    点击诊断
    在这里插入图片描述
    提示正常
    在这里插入图片描述
    复制外网地址:
    在这里插入图片描述
    7)继续配置gitee
    复制jenkins
    在这里插入图片描述
    配置gitee的webhook,点击添加
    在这里插入图片描述
    8)git提交代码(模拟开发提交修改代码)
    在这里插入图片描述
    9)成功触发执行
    在这里插入图片描述
    ⑤轮询SCM
    在这里插入图片描述

    5.增加构建步骤

    点击执行shell
    在这里插入图片描述
    填写shell命令(运行项目的命令)

    python3 all.py
    
    • 1

    在这里插入图片描述

    6.构建后操作-生成Allure报告

    点击Allure Report
    在这里插入图片描述
    注意:这里的路径是相对路径,所以实际生效路径是:/var/jenkins_home/workspace/项目名称/+Path,Path且只能填写 /var/jenkins_home/workspace/项目名称/ 这个目录下的文件(注:项目名称,为新建任务时的任务名称),不能访问该目录以外文件。
    我的实际地址为:/var/jenkins_home/workspace/API_automation/pytest/reports
    所以这里的Path应填写:/pytest/reports
    在这里插入图片描述
    先运行下,检查是否能够正常运行,点击应用,点击保存,手动点击立即构建
    在这里插入图片描述
    点击构建任务1,查看详情
    在这里插入图片描述
    点击控制台输出
    在这里插入图片描述
    成功运行
    在这里插入图片描述
    点击Allure Report
    在这里插入图片描述
    成功生成
    在这里插入图片描述

    7.系统配置-邮件相关内容配置

    系统管理->系统配置
    在这里插入图片描述
    找到Jenkins Location,输入系统管理员邮件地址
    在这里插入图片描述
    找到Extended E-mail Notification
    smtp地址和端口
    在这里插入图片描述
    安全码
    在这里插入图片描述
    填写smtp服务器地址,填写端口,勾选Use SSL
    在这里插入图片描述
    点击添加,选择jenkins
    在这里插入图片描述
    填写发件人邮箱账号,发件人邮箱安全码,点击添加
    在这里插入图片描述
    点击下拉框,选择上刚才填写的内容
    在这里插入图片描述
    选择HTML样式,填写收件人邮箱,多个邮箱用英文,隔开
    在这里插入图片描述
    勾选邮件Debug日志,方便出现问题后查看日志
    在这里插入图片描述
    填写smtp服务器地址,勾选smtp认证,输入发件人邮箱,邮箱安全码,勾选SSL协议,输入端口
    在这里插入图片描述

    勾选测试邮件,填写测试收件人邮箱,点击测试,提示成功,成功收到测试邮件
    在这里插入图片描述
    点击应用,点击保存
    在这里插入图片描述

    8.构建后操作-邮件配置

    点击项目配置
    在这里插入图片描述
    点击增加构建后操作步骤,选择Editable Email Notification
    在这里插入图片描述
    填写收件人邮箱,多个邮箱账号中间用英文,隔开
    在这里插入图片描述
    Content Type选择HTML,Default Subject填写邮件标题,输入Default Content(邮件模板)
    在这里插入图片描述
    邮件模板

    DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志title>
    head>
     
    <body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4" offset="0">
        <table width="95%" cellpadding="0" cellspacing="0" style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
            <tr>
                <td>(本邮件由程序自动下发,请勿回复!)td>
            tr>
            <tr>
                <td>
                    <h2><font color="#FF0000">构建结果 - ${BUILD_STATUS}font>h2>
                td>
            tr>
            <tr>
                <td><br />
                    <b><font color="#0B610B">构建信息font>b>
                    <hr size="2" width="100%" align="center" />
                td>
            tr>
            <tr><a href="${PROJECT_URL}">${PROJECT_URL}a>
                <td>
                    <ul>
                        <li>项目名称:${PROJECT_NAME}li>
                        <li>GIT路径:<a href="${GIT_URL}">${GIT_URL}a>li>                    
                        <li>构建编号:第${BUILD_NUMBER}次构建li>                    
                        <li>触发原因:${CAUSE}li>
                        <li>系统的测试报告 :<a href="${PROJECT_URL}${BUILD_NUMBER}/allure">${PROJECT_URL}${BUILD_NUMBER}/allurea>li><br />
                        <li>构建日志:<a href="${BUILD_URL}console">${BUILD_URL}consolea>li>
                    ul>
                td>
            tr>
            <tr>
                <td>
                    <b><font color="#0B610B">变更信息:font>b>
                   <hr size="2" width="100%" align="center" />
                td>
            tr>
            <tr>
                <td>
                    <ul>
                        <li>上次构建成功后变化 :  ${CHANGES_SINCE_LAST_SUCCESS}a>li>
                    ul>    
                td>
            tr>
     <tr>
                <td>
                    <ul>
                        <li>上次构建不稳定后变化 :  ${CHANGES_SINCE_LAST_UNSTABLE}a>li>
                    ul>    
                td>
            tr>
            <tr>
                <td>
                    <ul>
                        <li>历史变更记录 : <a href="${PROJECT_URL}changes">${PROJECT_URL}changesa>li>
                    ul>    
                td>
            tr>
            <tr>
                <td>
                    <ul>
                        <li>变更集:${JELLY_SCRIPT,template="html"}a>li>
                    ul>    
                td>
            tr>
    
            <hr size="2" width="100%" align="center" />
     
        table>
    
    body>
    html>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76

    点击Advanced Settings
    在这里插入图片描述
    点击Add Trigger,点击Always
    在这里插入图片描述

    在这里插入图片描述
    点击应用,点击保存
    在这里插入图片描述

    9.再次执行构建

    成功
    在这里插入图片描述

  • 相关阅读:
    iframe的src可以引入任何源,但是二者如果想通信的话,必须是同源,如果是非同源,如何解决?
    git上传代码(第一次或已有代码)
    android adb读写权限单独控制
    Android中级——PackageManagerService和Intent
    springmvc-响应数据
    MySQL驱动中关于时间的坑
    MySQL - mysql服务基本操作以及基本SQL语句与函数
    发布算法方案,灰度发布是什么
    How to customize the text of a generic Qlik Sense error message
    华为云桌面Workspace,实惠更实用!
  • 原文地址:https://blog.csdn.net/Zuo19960127/article/details/133141681