我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Pyhton自动化测试持续集成和Jenkins

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Pyhton自动化测试持续集成和Jenkins

持续集成

官方术语:

持续集成(Continuous Integration),也就是我们经常说的 CI
持续集成(CI)是一种实践,可以让团队在持续的基础上收到反馈并进行改进,不必等到开发周期后期才寻找和修复缺陷。

持续集成流程

在软件的生命周期过程中,从需求,到实现,到测试,到用户手中,是一个持续的过程。

在这个过程当中,不止是开发工作,有很多的环节都可以利用自动化的手段去持续的定期的执行任务,来提升整体的软件质量和效率。

下图为我画的在软件生命周期过程中,开发人员和测试人员和配置管理人员的流程图。

图中红色字体部分均是可以持续定期的去执行。

将上图中的内容综合一下,那么我们可以得到下图的持续集成流程。

Jenkins

一款持续集成工具,可以在 jenkins 当中完成以上持续集成流程中的每一个环节。

jenkins 中有 3 大重要概念:

1、Job(任务/工程)

在 jenkins 平台中,都是以 Job(任务/工程)为单位去完成一件事情的。

在使用jenkins时,都是会在jenkins管理界面当中创建一个job/item。在job/item中来组织任务。 

2、plugin(插件)

jenkins 提供平台,集成各种插件来完成一个 Job。想用 jenkins 平来做什么,先找找有没有相应的插件。
比如:windows 命令、Linux 命令的支持、SVN 和 Git 代码获取、邮件发送,测试报告集成等都需要安装相应的插件才能够在 jenkins 当中使用这些功能。

3、workspace(工作空间)

jenkins 是通过文件形式来存储和管理数据的。
所以,在安装jenkins,要指定一个Jenkins_Home目录。所有jenkins相关的数据都存放在此目录下。 
workspace即给jenkins指定一个专门的目录来存储其所有的配置和数据。
jenkins的workspace是根目录 ,其下每个Job都有属于自己的workspace。
每个job的workspace当中用来存放本任务涉及到的数据/文件,以及任务执行完成后生成的数据/文件。 
相当于,给每一个job开辟了一个独立的文件夹。 

4、jenkins 管理(Jenkins Manager)

整个 jenkins 的全局配置。
包括权限管理、插件管理、节点管理等。

在 Jenkins 当中要完成一个任务,首先要创建一个 Job/Item。

通过配置 Job/Item,来配置任务的触发条件、任务的代码从哪获取、任务的执行过程涉及哪些步骤、任务执行完成之后要做哪些通知/展示工作。

一个 Job/Item 的配置项如下:

1、基本信息配置(General)

Job 名字、指定当前 Job 的工作空间、指定当前 Job 绑定到哪个执行机上执行等。。。

2、源码管理(Source Code Management)

svn/git 等,需要相应的插件支撑。
配置好源码管理后,在执行 Job 时会自动从相应的源码库里下载代码到当前 Job 的工作空间中。

3、构建触发器(Build Triggers)

触发器:执行当前任务的条件。
常用定时构建:类似 windows/linux 的定时任务。指定当前 Job 执行的时间。

定时任务配置规则如下:

首先,一共有 5 个配置选项(每个选项之间用空格隔开),分别是:

MINUTE(分钟) HOUR(小时) DOM(每月的天数) MONTH(一年的月份) DOW(每周的天数) 

  • MINUTE(分钟): 指一小时内的分钟数。有效值为:0-59
  • HOUR(小时):指一天内的小时数。有效值为:0-23
  • DOM(每月的天数):指一个月内的天数。有效值为:1-31
  • MONTH(一年的月份):指一年当中的月份数。有效值为:1-12
  • DOW(每周的天数):指一周当中的天数。有效值为 0-7。0 和 7 都表示周日。1-6 分别表示周一到周六。

支持以下操作:

  • *****表示匹配所有有效值。
  • M-N 表示一个连续的有效值范围。比如在 DOW 中用 1-5,表示取周一到周五。
  • M-N/X 或者 */X 表示以 X 为步长,取指定连续范围或所有有效值范围内的值。比如在 DOW 中用 1-5/2,表示取周一,周三,周五。
  • A,B,.....Z 表示枚举。比如在 DOW 中用 1,2,6,表示取周一,周二,周六。

示例:

每周一、三、五,每天上午 10 点整,自动触发任务的执行。

定时配置如下:0 10 * * 1,3,5

MINUTE(分钟): 值为 0。

HOUR(小时):值为 10

DOM(每月的天数):值为* 没有指定一个月当中,只有哪几天运行。所以用*匹配所有有效值。

MONTH(一年的月份):值为* 没有指定一年当中,只有哪个月运行。所以用*匹配所有有效值。

DOW(每周的天数):值为 1,3,5。用枚举方式。因为即不是所有值,也不是连续的有效值。

4、构建(Build)

此一步是用来实现所有你想用此 Job 做的事情。
添加构建步骤:按顺序执行构建步骤。

构建步骤的下拉列表选项多少,由 jenkins 中已安装的相关插件决定 。因为许多功能都是由插件来支撑的。

5、构建后行为(Post-build Actions)

此一步主要在任务执行完成之后,要做的事情。
比如要发送邮件、要展示任务执行的结果。
方式与 4 中一样,都是选择相应的插件功能。

构建后操作步骤的下拉列表选项多少,由 jenkins 中已安装的相关插件决定 。因为许多功能都是由插件来支撑的。

任务配置完成之后,点击 立即构建 ,测试任务在执行时是否有错误。

到此这篇关于Pyhton自动化测试持续集成和Jenkins的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持编程网

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Pyhton自动化测试持续集成和Jenkins

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

PHP 测试金字塔:持续集成中的自动化测试策略

测试金字塔是一种采用分层测试策略的持续集成方法,有助于提高软件质量并加快开发速度。它促进了不同粒度级别上的全面测试,确保了应用程序在所有级别上都正常运行。
PHP 测试金字塔:持续集成中的自动化测试策略
2024-02-17

利用Hudson持续集成来执行Android自动化测试

当你套用Athrun、Robotium等框架,针对自己的项目写完了一堆自动化测试脚本后,在Eclipse之外怎么让它们可以持续性地跑起来并展现报告呢?据我了解,方便的方法大致有两个:其一,利用Hudson(或Jenkins)持续集成系统;其
2022-06-06

PHP 持续集成中的 Jenkins:构建和部署自动化大师

使用 Jenkins 作为持续集成(CI)工具,可以实现 PHP 应用程序的自动化构建和部署,从而提高开发效率和代码质量。
PHP 持续集成中的 Jenkins:构建和部署自动化大师
2024-02-17

PHP 单元测试自动执行与持续集成

php 单元测试通过 phpunit 实现自动执行,可以集成到持续集成管道中,从而确保代码质量、及早发现错误并提高开发效率。1. 安装 phpunit:composer require --dev phpunit/phpunit 2. 创建
PHP 单元测试自动执行与持续集成
2024-05-06

PHP 性能优化:持续集成与自动化优化

通过持续集成(ci)和自动化优化工具,您可以实现持续的 php 应用程序性能改进。ci 允许快速识别影响性能的更改,而自动化优化工具通过识别和修复代码瓶颈来节省时间和精力,从而提升用户体验,节省开发时间和资源。PHP 性能优化:持续集成与自
PHP 性能优化:持续集成与自动化优化
2024-05-10

Linux持续集成自动化安装Maven的方法

解压 Maven 包tar xf apache-maven-3.5.4-bin.tar.gz移动 解压后的maven文件 到 /usr/local/mv apache-maven-3.5.4 /usr/local#!/bin/bash #m
2022-06-04

GitLab的自动测试和自动化测试报告生成方法

GitLab的自动测试和自动化测试报告生成方法,需要具体代码示例随着软件开发项目的不断增加,测试变得越来越重要,而自动化测试成为了一种必不可少的手段。GitLab作为一个流行的代码托管平台,提供了许多工具和功能来支持自动测试和自动化测试报告
2023-10-22

Go语言中性能测试的持续集成和交付

在 go 中进行性能测试的持续集成和交付:集成性能测试的最佳实践:早期集成到 ci 管道中自动化测试用例收集性能指标设置性能指标验收阈值实战案例:使用 httperf 创建性能测试用例将用例集成到 ci/cd 工具(如 jenkins)中设
Go语言中性能测试的持续集成和交付
2024-05-09

攻克持续集成难关:PHP 项目的自动化秘笈

在 PHP 项目开发中,实施持续集成(CI)至关重要,它可以提高代码质量、减少错误并加速开发流程。这份指南将提供一个分步指南,帮助您在 PHP 项目中设置自动化的持续集成管道。
攻克持续集成难关:PHP 项目的自动化秘笈
2024-02-17

Docker在Linux系统中的自动化测试集成

Docker在Linux系统中的自动化测试集成是一个复杂的过程,但也是一个非常有价值的过程,因为它可以确保你的应用程序在不同的环境中都能正常运行。以下是一个基本的步骤指南,帮助你在Linux系统中集成Docker进行自动化测试:1. 安装
Docker在Linux系统中的自动化测试集成
2024-10-07

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录