为什么有些程序员比你早下班?原因就是这个!

点击上方 蓝色文字,选择"置顶公众号"

第一时间关注 Python 技术干货!

阅读文本大概需要 5 分钟。

目录
  • 前言

  • Jenkins作用

  • 下载安装Jenkins

  • 启动 Jenkins

  • 新建Jenkins任务

  • 配置Jenkins任务

  • 效果展示

  • 后记

前言

上周五快下班的时候,约朋友聚聚,朋友却说晚上要加班执行脚本,白天在开发测试阶段,环境不稳定,晚上稳定些,他还说以前都是这样做的,别人下班他就开始忙起来。我一听就乐了,用工具就可以定时帮你执行啊,执行完后还可以把执行结果通过邮件发给你。你不会用工具,难怪你经常加班。

所以今天要分享的是一个可以提高工作效率的集成工具:Jenkins,它是一个开源软件项目,是基于 Java 开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

Jenkins作用
  • 持续的软件版本发布/测试项目。

  • 监控外部调用执行的工作。

下载安装Jenkins

在 Jenkins 官网下载 Jenkins 包,根据系统下载对应 zip 包(我用的是 win10 系统),建议下载 LTS 版本,Weekly 版本每周都会更新 ,更新频率太快。解压后安装,安装完成后,Jenkins 服务就成功安装在本地了。下载地址如下:

https://jenkins.io/download/
启动 Jenkins

上面安装完成后会自动启动 Jenkins,默认地址是:http://localhost:8080/,第一次启动的话,需要根据其步骤解锁 Jenkins,然后安装基本的插件。

插件完成后会让你创建管理员账户等信息,完成后进入 Jenkins 新用户页面。

新建Jenkins任务

点击左侧「新建任务」按钮新建 jenkins 任务,输入任务名称,选择任务类型保存。

配置Jenkins任务

根据自己的需求对任务进行配置,我们先从简单的需求开始,需求:每天的凌晨 3 点 APP 自动签到。这个需求的代码详见上篇文章  凌晨三点,你手机上的APP在自动签到

1、源码管理
配置 jenkins 获取源码的方式,有 Git 和 Subversion 管理方式,我今天获取本地路径的源码,所以我选择第一个 None 选项。

2、构建触发器
这里配置触发脚本运行的条件,这里我们选择每天定时执行,选择 Build periodically。

定时构建语法(五颗星,中间用空格隔开)

* * * * *

第一颗 * 表示分钟,取值 0~59;

第二颗 * 表示小时,取值 0~23;

第三颗 * 表示一个月的第几天,取值 1~31;

第四颗 * 表示第几月,取值 1~12;

第五颗 * 表示一周中的第几天,取值 0~7,其中 0 和 7 代表的都是周日。

举几个例说明下:

① 每30分钟构建一次:

H/30 * * * *

② 每2个小时构建一次

H H/2 * * *

③ 每天早上8点构建一次

0 8 * * *

④ 每天的8点,12点,22点,一天构建3次

0 8,12,22 * * *

我想你应该已经知道每天凌晨 3 点的配置方法了。

3、增加构建步骤
这个步骤需要区分系统,windows 系统和 Linux 系统选项不同,我以 windows 系统举例。

在命令框中输入 pybot 命令,后面的参数是脚本的绝对路径。

pybot F:\autotest\autotest\test\test.robot

配置好后点击应用或者保存,这时是不是就可以了,会每天凌晨 3 点定时执行你的脚本,从而做到在 APP 中自动签到吗?如果是操作浏览器的话到这里就结束了,我们现在要操作的是 APP,上篇文章中讲到过,我们需要借助第三方工具 Appium 来启动,难道我们需要先启动 Appium 客户端才行吗?当然不用,我们可以在命令框用命令来启动 Appium。

启动 Appium 的命令是 @start appium,后面需要带上启动的设备 id 信息,Appium 的 ip 和端口信息等。所以修改后的命令如下图。

效果展示

最后我们确保电脑连接上了模拟器,我们手动启动 Jenkins 任务试试效果。

对于大项目,还是建议把 Jenkins 服务部署在服务器中,这样大家都在同一个 Jenkins 服务环境下,比如说对于公司的测试脚本、运维自动部署脚本、大量批处理脚本。

对于我们自己的薅羊毛的小项目,比如我这次是把 Jenkins 服务放在了本地,为了操作 APP,把安卓模拟器设置成开机自启动文件(如果只是操作浏览器,这一步忽略),上班打开公司电脑或者下班打开家庭电脑,模拟器就会自启动。

这样的话,准备工作就完成了,Jenkins 任务设置好定时执行的时间就可以了。一般公司的项目我设置为中午吃饭时间让 Jenkins 自动执行,家庭电脑设置晚上某个时间点执行,这样就可以「高枕无忧」了,还用得着加班执行代码或者手动薅羊毛么?

后记

用了 jenkins 工具后,你中午吃饭时间你的脚本已经帮你做了很多回归测试和自动化部署工作,这样你就可以早点下班去 happy 了。等等,执行时如果有些案例失败会有报告吗?有的,Jenkins 任务里有构建后设置的选项,可以选择邮件配置,这块配置的内容较多,就放到下次再分享了。

今天的内容就分享到这里,希望对你有帮助,祝进步!

「pk哥」以梦为马,不负韶华

长按识别二维码关注

觉得不错,点赞、赞赏、转发都是一种支持。

欢迎点击下方小程序给 pk哥留言

推荐阅读:

Python自动化测试入门,看这一篇就足以

Python自动化操作浏览器,解放双手,这感觉真爽

Python爬取微信,我发现了之前没发现的秘密!

Python爬虫下载喜马拉雅音频文件

自从会了Python之后,我就没用过PS了!3秒带你将照片变成素描图片!

Python图形用户界面GUI入门

大量 IT 资源免费送,包括但不限于 Python、Java、人工智能、PMP,等等,在公众号内回复「1024」可免费获取。

本公众号的全部文章以整理成目录,后台回复「目录」可查看所有文章。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SQLAlchemy 是一个 SQL 工具包和对象关系映射(ORM)库,用于 Python 编程语言。它提供了一个高级的 SQL 工具和对象关系映射工具,允许开发者以 Python 类和对象的形式操作数据库,而无需编写大量的 SQL 语句。SQLAlchemy 建立在 DBAPI 之上,支持多种数据库后端,如 SQLite, MySQL, PostgreSQL 等。 SQLAlchemy 的核心功能: 对象关系映射(ORM): SQLAlchemy 允许开发者使用 Python 类来表示数据库表,使用类的实例表示表中的行。 开发者可以定义类之间的关系(如一对多、多对多),SQLAlchemy 会自动处理这些关系在数据库中的映射。 通过 ORM,开发者可以像操作 Python 对象一样操作数据库,这大大简化了数据库操作的复杂性。 表达式语言: SQLAlchemy 提供了一个丰富的 SQL 表达式语言,允许开发者以 Python 表达式的方式编写复杂的 SQL 查询。 表达式语言提供了对 SQL 语句的灵活控制,同时保持了代码的可读性和可维护性。 数据库引擎和连接池: SQLAlchemy 支持多种数据库后端,并且为每种后端提供了对应的数据库引擎。 它还提供了连接池管理功能,以优化数据库连接的创建、使用和释放。 会话管理: SQLAlchemy 使用会话(Session)来管理对象的持久化状态。 会话提供了一个工作单元(unit of work)和身份映射(identity map)的概念,使得对象的状态管理和查询更加高效。 事件系统: SQLAlchemy 提供了一个事件系统,允许开发者在 ORM 的各个生命周期阶段插入自定义的钩子函数。 这使得开发者可以在对象加载、修改、删除等操作时执行额外的逻辑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值