27

Jenkins集成appium自动化测试(Windows篇)

 3 years ago
source link: http://www.cnblogs.com/lfr0123/p/13830580.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

一,引入问题

  • 自动化测试脚本绝大部分用于回归测试,这就需要制定执行策略,如每天、代码更新后、项目上线前定时执行,才能达到最好的效果,这时就需要进行Jenkins集成。

  • 不像web UI自动化测试可以使用无痕浏览器做到无界面,APP UI自动化需要用到真机或模拟器,在完全的linux环境下做Jenkins集成显得不太可能。

  • 可以在自己的工作电脑上搭建Jenkins,并运行APP UI自动化测试项目,但工作电脑关闭后就不能定时运行自动化项目,且工作的电脑还要用来做别的工作,这样显得极其不方便。

基于以上等原因,可以考虑向公司申请一台专门用于做自动化测试的本地电脑,搭建好本地电脑的测试环境,连接真机或模拟器;在公司的测试服务器上部署Jenkins,新建节点连接本地测试电脑,这样就可以利用Jenkins设置策略定时在本地测试电脑上构建测试项目。

注意:之所以不直接在专门用于测试的电脑上直接搭建Jenkins,是因为可能除APP自动化项目外,还有web自动化、接口自动化或者其他集成项目,Jenkins搭建在远程服务器上方便对所有需要Jenkins构建的项目进行管理。

本篇博客涉及的环境:远程Jenkins版本2.176.3,本地电脑 Windows 10

二,搭建思路

1,搭建Jenkins

2,新建节点

3,配置节点

4,节点启动代理

5,新建任务

6,配置任务(获取最新代码、关联从节点等)

7,调试构建

三,具体步骤

1,搭建Jenkins

不多赘述,网上教程很多,大家自行查阅。也有很多公司的测试服务器已经搭建好Jenkins,直接使用即可。 注意 ,本博客示例的Jenkins版本为2.176.3

2,新建节点

登录Jenkins --> Manage Jenkins --> Manage Nodes --> 新建节点,具体步骤如下:

f2eammM.png!mobile

点击确定后,会跳转至节点配置页面。

3,配置节点

3.1,按下图中的说明进行配置,未进行说明的默认即可,再点击【保存】按钮。

JzInim3.png!mobile

注意:

  • 远程工作目录,理论上可以填写本地测试电脑里的任意目录路径,但最好专门新建一个用于Jenkins工作的目录。

  • 我这里的Jenkins版本为2.176.3,启动方法中无 Launch agents Java Web Start 选项,网上查找资料后进入Manage Jenkins --> Configure Global Security 进行如下设置

BJFze2r.png!mobile

但启动方法中仍然没有展示"Launch agents Java Web Start"选项。但其实这里选择"Let Jenkins control this Windows slave as a Windows service"也是可行的。

3.2,点击保存后,跳转至Nodes页面,出现如下节点

iIVVfmq.png!mobile

4,启动代理

4.1,Nodes页面点击节点,跳转至如下页面:

y6ruaey.png!mobile

4.2,这里有两种方法启动节点,我选择第一种,点击【Launch】,提示下载slave-agent.jnlp文件,将该文件下载保存至方便后面查找的目录里。

VvuuUfJ.png!mobile

4.3,双击 slave-agent.jnlp 文件后点击运行,会出现如下图标

UjiQnaa.png!mobile

这个时候,在Jenkins主页我们会看到节点已经连接成功。

Ib2y2i2.png!mobile

5,新建任务

新建一个自由风格的任务,步骤如下:

Abea6n2.png!mobile

6,配置任务

对上一步新建的任务进行配置,步骤如下。

6.1,任务关联节点

标签表达式里可以填写配置时填入的标签名,也可以直接填写节点名称。

6vaAbyN.png!mobile

6.2,源码管理

6.2.1,因为我的代码通过git管理,所以选择Git选项

6.2.2,Repository URL,填入git中该测试项目的地址

jyYzMjf.png!mobile

6.2.3,Credentials,填入git账号跟密码。填写方法,点击【添加】按钮进入添加页面,添加git账号密码后,再选中即可,具体如下:

6RfmEzM.png!mobile

6.2.4,Branch Specifier (blank for 'any'),选择项目分支,可填写该项目需要运行的分支,没有其他分支的话,默认master即可

AzU36vn.png!mobile

6.3,构建触发器(非必选)

可根据自己的需求来选择不同的项进行配置,也可不配置。如果需要定时构建运行项目,则勾选Build periodically,填入30 23 * * *,则表示每天晚上11点半开始运行项目,如下所示:

3a2aium.png!mobile

6.4,构建

点击【增加构建步骤】按钮,选择"Execute Windows batch command"

EBZRNf6.png!mobile

输入构建命令,即执行自动化测试项目的命令

veqA3u3.png!mobile

注意,第一次配置构建命令时,可以随意配置,如:python run.py,保存配置后先进行第一次构建,第一次构建完成后,会在节点配置的远程工作目录里生成workspace文件夹,下面的第一构建步骤会具体介绍。

6.5,进行第一次构建

按照上面的步骤进行配置后,先点击【应用】再点击【保存】

6ZfMVj.png!mobile

保存成功后,跳转至test任务页面,点击【Build Now】,进行第一次构建

BZRzyy2.png!mobile

不用管第一次构建是失败与否,构建完成后会在节点配置的远程工作目录里生成workspace、remoting两个文件夹,如下图

VzEVB3R.png!mobile

并在workspace中生成两个以任务名命名的文件夹,如下图的test、test@temp

YNzEbiJ.png!mobile

其中test文件夹里会从第6.2步中配置好的git仓库中下载项目代码,如下:

IBRjuyM.png!mobile

至此,第一次构建的目的达到了。但是我们需要根据项目中run文件的具体路径,再次配置任务里的构建命令,后续才能正确地构建运行测试项目,这里配置如下,再点击应用、保存。

YNzmauR.png!mobile

注意,执行python命令需要提前在本地测试电脑里配置好python。

7,调试

按照第6步配置任务完成后,先调试是否能跑通,调试成功后才可进行正式构建执行测试项目,进入任务主页面,点击【Build New】按钮。

6jQz22a.png!mobile

在构建历史中,还可选择点击某次构建进入控制台查看构建日志,如下:

63q2Ava.png!mobile

至此,就可以通过远程Jenkins在本地测试电脑上集成构建测试任务了。

四,总结

注意:

  • 配置节点时填写的远程工作目录,是本地测试电脑上的目录路径,即该Jenkins节点的工作目录。

  • 配置任务的源码管理时,根据实际需求,如果是git仓库就选择Git,如果是SVN就选择subversion

  • 进行第一次构建之前,由于还没有在远程工作目录里生成workspace并拉取代码,配置的构建命令并不需要真实的执行命令,如:python run.py

  • 第一次构建通常情况下会失败,但会生成remoting、workspace,并从远程代码仓库拉取代码存放在workspace中以节点名称命名的文件夹里

  • 第一次构建完成后,需要对任务重新配置正确的构建命令,如:python E:\autoTest\workspace\test\run.py

Zb2A7jj.jpg!mobile


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK