Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作。
注
:此安装步骤基于Win10 ,x64环境。
前提
:本地需安装好JDK。JDK安装配置教程,可参考:https://blog.csdn.net/moxiaofei1208/article/details/80988626
服务登录凭据设置,有两种方式:
①我这里选择"Run service as LocalSystem(not recommended)“,然后点击“Next”即可;
②如果选择"Run service as local or domain user”,可参考:https://blog.csdn.net/qq_27696623/article/details/121636342
端口号设置,因为端口号默认为8080,考虑到该端口号可能会被其他服务占用,故建议修改此端口号。比如我这里改为了8181,再点击“Test Port”,如果有个绿色的√出现(表示端口号可行),再点击Next;
选择本地jdk安装路径,此页面一般自动带出本地jdk安装路径。若带出不正确可自行修改,打开cmd窗口,执行命令java -verbose
,返回结果的最后两行即为本地jdk安装路径。
安装后首次登录需要找到系统动态设置的初始密码,根据浏览器中的提示路径,找到对应路径下的initialAdminPassword文件,并用文件编辑软件打开,复制里面的密码;
选择“安装推荐的插件”,由于插件下载源是国外的,安装插件过程会比较慢,如果有安装失败的插件,可修改为国内的下载源后再重新安装,可参考:https://www.cnblogs.com/starsray/p/12753366.html;
jenkins设置简体中文
①依次点击【Manage Jenkins】→【Manage Plugins】,进入到插件管理页面;
②切换到【可选插件】tab,并搜索插件名Locale plugin
,若搜索后存在则点击安装,若搜索后不存在,则切换到【已安装】tab,看看该插件是否已经安装了;
③安装中文(简体中文)汉化语言包插件Localization: Chinese (Simplified)
;
④依次点击【Manage Jenkins】→【Configure System】,进入到系统配置页面;
⑤找到【Default Language】(注:必须先安装Locale plugin插件,否则无法找到该选项),设定简体中文,输入zh_CN
;
简体中文:“zh_CN”,繁体中文:"zh_TW",英文:"en_US"
⑥重启jenkins,地址栏输入:http://域名/restart
,提示中点击“是”,即可完成重启;
注:以上步骤针对于最新版本Jenkins 2.341
可能不适用,按照步骤操作后,部分按钮字段仍然显示英文,目前笔者还没找到其他方法可以解决。
详见笔者的另一篇博客:Postman做接口测试并生成接口测试报告
不能单独只输入newman,前面需加上newman在本地的绝对路径
,不然会报找不到newman的错误。在jenkins上展示html报告,需要添加一个HTML Publisher plugin插件,把生成的html报告放到指定文件夹,这样就能用jenkins去读出指定文件夹的报告了。
HTML Publisher
→安装;HTML Publisher
,如果存在,则证明安装成功,且要使插件处于启用状态;HTML directory to archive
:在本机上运行完脚本后生成的测试报告路径,这里是相对路径;Index page[s]
:报告名称,这个就是运行完脚本后,在本地报告生成路径下的报告名称,我这里是result.html;Index page title[s] (Optional)
:非必填项;Report title
:显示在jenkins上的名称,默认HTML Report就行;背景:当项目中要求以持续压测、定时任务的方式执行脚本时,通过 build now 手动触发的方式进行构建项目就很不灵活,这时就可以用jenkins自带的构建触发器进行自动化构建。
Jenkins(v2.341)本身内置了 5 种构建触发器:
选择“触发远程构建” ,填入身份验证的令牌(通常情况下令牌需要经过加密),令牌获取可参博客:不登录触发远程构建详解
作用:无需登录jenkins,使用拼接url+令牌直接访问触发远程构建,在浏览器地址中访问:http://{IP}:{端口号}/buildByToken/build?job={Job名称}&token={Token}
作用:配置关注项目工程,在关注的项目构建后(失败或成功),再构建本项目
作用:每隔一段时间触发构建
定时构建语法
* * * * *
星号*中间用空格隔开
第一个*表示分钟,取值0~59
第二个*表示小时,取值0~23
第三个*表示一个月的第几天,取值1~31
第四个*表示第几月,取值1~12
第五个*表示一周中的第几天,取值0~7,其中0和7代表的都是周日
示例:
H/5 * * * *
H H/2 * * *
H 8 * * *
H 8-17/2 * * *
H 8-17/2 * * 1-5
H 12 1,15 1-11 *
向GitHub提交代码时触发jenkins自动构建,可参考博客:Jenkins+Github实现自动触发构建
作用:指定一段时间间隔去扫描代码仓库的代码是否有变更,如果有,则触发项目构建。
语法参考定时构建语法。如这里填写的H/5 * * * *
,表示每5分钟去扫描代码仓库是否有代码变更,如有,则触发项目构建。