软件测试之Python自动化-CD-持续部署-Jenkins搭建保姆级教程

目录

1、引言

1.1、持续部署的概念

1.2、持续部署的优势和挑战

1.3、持续部署管理工具Jenkins在自动化测试中的作用

2、Jenkins概述

2.1、Jenkins的定义和历史

2.2、Jenkins的主要特点和优势

3、Jenkins的安装与配置

3.1、Jenkins的系统要求

3.2、安装Jenkins的步骤

4、自动化代码构建和测试流程实践

4.1、项目准备

4.2、将项目上传到远程仓库(代码管理系统gitee)

4.3、新建Jenkins

步骤一、建立一个Jenkins工程

步骤二、新建项目页面设置

4.4、配置general

步骤三、丢弃旧的构建,配置好后点击应用(用于远程工程代码下拉pull保存设置以及运行设置)

4.5、配置源码管理

步骤四、输入自动化代码远程仓库地址:

步骤五、配置远程仓库代码的用户名和密码,使能够进行访问:

4.6、配置构建

步骤六、执行pytest命令

步骤七、选择执行命令对应的系统:Window或者LInux:

步骤八、选择Windows构建并输入执行命令并点击应用;

4.7、配置后操作

步骤九、配置构建后输出测试报告

步骤十、配置Allure报告json数据输出地址

步骤十一、配置报告输出地址:

注意:在 Jenkins 中工具配置中需要指定 Allure工具,步骤如下:

4.8、配置构建触发器

 步骤十二、构建触发器,配置自动化代码自动运行

1. 定时构建(Build periodically)

2. 轮询 SCM(Poll SCM)

3. 基本含义

4. 为什么用 H?

4.9、自动运行自动化测试代码进行测试


1、引言

1.1、持续部署的概念

  • 持续部署(Continuous Deployment, CD)‌是软件开发中的一种策略,它指的是代码通过评审后(或者是通过自动化测试后),自动部署到生产环境。持续部署是持续交付(Continuous Delivery, CD)的下一步,目标是确保代码在任何时刻都是可部署的,可以直接进入生产阶段。‌ 

  • ‌代码提交‌:开发者向代码仓库提交代码。

  • ‌自动化测试‌:提交的代码会触发一系列预定义的自动化测试,包括单元测试、集成测试和端到端测试。

  • ‌构建‌:通过测试后,代码会被合并到主干并进行构建,生成可运行的代码。

  • ‌部署‌:构建成功后,代码会自动部署到生产环境。

1.2、持续部署的优势和挑战

  • ‌优势‌:

    • ‌快速反馈‌:持续部署可以让开发团队快速收集真实用户的反馈,从而快速迭代和改进产品。

    • ‌减少手动干预‌:自动化部署减少了人工干预,提高了效率和准确性。

    • ‌降低风险‌:通过自动化测试和持续部署,可以减少生产环境中的错误和风险。

  • ‌挑战‌:

    • ‌环境差异‌:不同环境(如开发、测试、生产环境)的配置和管理复杂,可能导致部署失败。

    • ‌业务依赖‌:某些功能可能需要等待其他功能完成才能上线,这可能影响持续部署的实施

1.3、持续部署管理工具Jenkins在自动化测试中的作用

  • 通过Jenkins配置自动化代码运行,可以随时构建自动化验证项目的功能是否正常。项目功能代码集成到主干之前, 必须通过所有自动化测试用例, 只要有一个测试用例失败, 就不允许集成到主干;快速发现错误,每完成一点更新, 项目功能代码就集成到主干,防止分支大幅度偏离主干。

2、Jenkins概述

2.1、Jenkins的定义和历史

  • Jenkins是一个开源的自动化服务器,主要用于持续集成(CI)和持续交付(CD)工作流的管理和执行。它通过自动化软件开发生命周期中的构建、测试和部署过程,帮助开发团队更快、更高效地交付软件产品

2.2、Jenkins的主要特点和优势

  • 开源和免费:Jenkins是一个开源项目,这意味着它可以免费使用,并且有一个活跃的社区支持和贡献代码。

  • 易于安装和使用:Jenkins提供了简单的安装过程,并且有一个直观的用户界面,使得新用户可以快速上手。

  • 灵活性和可扩展性:Jenkins的核心功能相对简单,但它通过插件系统提供了极大的灵活性。用户可以根据自己的需求安装和配置各种插件来扩展Jenkins的功能。

  • 丰富的插件生态:Jenkins拥有一个庞大的插件库,这些插件可以帮助用户集成各种工具和框架,如版本控制系统(如Git)、构建工具(如Maven、Gradle)、测试框架等。

  • 持续集成和持续部署:Jenkins支持自动化的构建和测试流程,可以帮助团队实现持续集成(CI),并且可以进一步实现持续部署(CD)。

  • 多平台支持:Jenkins可以在多种操作系统上运行,包括Linux、Windows和macOS。

  • 分布式构建:Jenkins支持分布式构建,允许用户在多个节点上并行执行构建任务,这有助于提高构建效率和缩短构建时间。

  • 易于集成:Jenkins可以轻松集成到现有的开发和部署流程中,无论是小型项目还是大型企业级项目。

  • 实时监控和报告:Jenkins提供了实时的构建状态监控和详细的构建报告,帮助团队跟踪构建进度和质量。

  • 可定制的构建触发器:Jenkins支持多种触发构建的方式,包括定时触发、源代码变更触发等。

  • 环境友好:Jenkins可以在各种环境中运行,包括物理服务器、虚拟机、容器(如Docker)和云平台。

  • 社区支持:Jenkins有一个活跃的社区,用户可以在社区中寻求帮助、分享经验和最佳实践。

  • 安全性:Jenkins提供了多种安全特性,包括用户认证、权限控制和安全审计。

2.3、Jenkins与其他的CI/CD的比较

  • Jenkins vs GoCD:

    • GoCD以效率和可扩展性脱颖而出,擅长通过用户友好的仪表板简化复杂的工作流程。
    • GoCD支持并行和顺序执行,可以轻松配置依赖项,并且提供实时的价值流图来可视化端到端工作流程。
    • Jenkins则以其丰富的插件生态和灵活性著称,但可能在新用户设置上较为复杂。
  • Jenkins vs GitLab CI/CD:

    • GitLab CI/CD与GitLab代码托管、项目管理等功能紧密集成,支持YAML文件配置,易于上手。
    • Jenkins提供了丰富的功能和插件来支持CI/CD过程,但其架构和扩展性可能与Tekton有所不同。
    • GitLab CI/CD提供了更好的Docker集成和有向无环图pipeline的机会,而Jenkins则提供了大量的插件库和自托管的优势。
  • Jenkins vs CircleCI:

    • CircleCI是一个基于云的CI/CD平台,支持多种编程语言和框架,支持并行任务执行,提高构建速度。
    • CircleCI的配置简单,支持YAML文件配置,易于上手,而Jenkins虽然也支持YAML配置,但可能在配置上不如CircleCI直观。
  • Jenkins vs Travis CI:

    • Travis CI是一个流行的开源平台,支持多种编程语言,配置文件为YAML格式,易于上手。
    • Travis CI拥有活跃的社区支持,而Jenkins虽然也有强大的社区,但在某些方面可能不如Travis CI社区活跃。
  • Jenkins vs Bamboo (Atlassian):

    • Bamboo是Atlassian提供的一款CI/CD工具,与Jira和Bitbucket等Atlassian产品紧密集成。
    • Jenkins以其开源和自托管的优势被广泛使用,而Bamboo则提供了更加商业化的解决方案

3、Jenkins的安装与配置

3.1、Jenkins的系统要求

        Jenkins是目前最主流的持续部署平台。整体是基于java语言实现的,所以在安装环境的时候,是需要关联到java相关环境来实现安装。Jenkins为了满足各种不同环境的安装需求,所以会有各种安装形态。推荐各位使用Tomcat+Jenkins.war的安装形态来实现。

3.2、安装Jenkins的步骤

  1. 安装jdk的版本。下载地址:Java Archive Downloads - Java SE 8u211 and later(安装什么版块根据Jenkins版本的要求,具体可参考Jenkins官网要求:https://mirrors.jenkins-ci.org/war/

  2. 添加tomcat,控制版本在9即可。推荐使用免安装版本

  3. 官网下载:(https://mirrors.jenkins-ci.org/war/)jenkins.war运行程序,注意,下载后不需要解压

  4. 将jenkins.war放到tomcat的webapps路径下。(路径下原有的默认文件和文件夹都可以直接删掉)

  5. 启动

    1. 通过tomcat。windows系统是通过在tomcat的bin路径下有一个startup.bat文件,双击启动。linux系统是通过运行tomcat的bin路径下的startup.sh文件来启动(初次运行时间是比较长的,请耐心等待。)。启动之后,不要关闭tomcat的命令窗。否则tomcat会结束运行

    2. 直接运行Jenkins.war包,进入war包所在目录:cmd进入黑窗口运行命令:

      java -jar jenkins.war

      运行后不用关掉黑窗口,不然jenkins会退出

  6. 再打开tomcat的webapps下,会发现一个jenkins的文件夹

  7. 访问jenkins:http://localhost:8080/jenkins

  8. 初次访问jenkins需要管理员密码,在日志中查看,也可以根据提示的路径找到密码文件,一般密码就在运行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值