1.安装条件:jdk1.8以上的,百度jenkin进入官网--download ,根据需要的版本下载
2.jenkins概念:持续集成,jenkins开源属于插件式形式进行管理的,选择性的装插件,支持可视化web系统
把代码放到svn--jenkin拉取svn上的代码/直接拉取本地代码
3.people :用户,Build Histry :构建历史,project relationship :模块,check file fingerprint :日志输出,凭证
4.使用步骤:
设置--系统设置(邮件设置,jenkins路径设置)
安全配置---(选 Logged-in users can do anything/Anyone can do anything),如果配置错误不小心点了保存或者端口被占用如何解决?
解决方法:
安全配置错误:找到jenkins安装目录(jenkins)里面找到config.xml文件查找到 authorizationStrategy 标签里面的内容删掉即可
端口被占用则修改:jenkins安装目录(jenkins)里面找到jenkins.xml文件查找到 arguments 修改 HttpPort=8080
5.全局工具配置:
Git:
name :git名称
Path to Git executable:代码要在哪里运行,那台服务器上的git的地址,需要配到执行文件一节,如:c:program filesGitingit.exe(该路径 是windows),linux(/opt/Git/bin/git.exe)
6.前提是需要安装的插件:
HTML Publisher Emain Exten,Git,Email Extension Publisher, Subversion Pug-in(svn) /Subversion ,
7.使用步骤:
NEW 任务/新建项目--输入任务名称(Python-Api-TestOnes)选类型(构建一个自由风格的软件项目/Freestyle project)--确定
General:对该项目的描述(API自动化测JOB)
下方如果是 GitHub 项目就打钩 输入GitHub 项目地址
Discard old builds:是否选择丢弃旧的构建/关闭构建(原因:创建job目录的时候jenkins目录job下面创建一个文件夹,服务器资源被占用越来越多,因此建议勾选)
/var/lib/jenkins/jobs/pythonapitetsone/builds 下的目录就会越来越多,因此保存构建天数为 30天
8.源码管理可选:无 Git Subversion
Git :使用存放代码的地址,设置凭证--点击立即构建(svn相同)
9.拉代码后进入配置,构建触发器:
1)触发远程构建 (例如,使用脚本)
2)其他工程构建后触发(比如开发提交代码后自动触发打包执行)
3)定时构建(写一个定时器)
如果都不选则需要手动触发
10.构建环境
和workspase下面项目相关
Delete workspace before build starts:每次构建前把workspase中删除然后去svn或者git重新拉最新的下来
11.构建
接下来就是要设置runtest.py文件来执行所以的用例
选择执行windos批处理命令,输入执行的命令:python run_test.py
关键:要把run_test.py放在workspase工程主目录下
12.为了避免系统自动寻找并使用Python2,而项目使用的是python3,因此需要把python3的路径/你所用的python全路径粘进去
如:D:PythonPython37Scriptspython run_test.py(仅限于有多个python时使用该方法)--->指定调用哪个python,保存13.保存之后进行立即构建,构建完之后就会自动去执行run_test.py文件
14.执行完成后回到job页面(工程页面),进入workspase
15.查看HTML报表,为了不用进入到目录下面去看需要增加job配置内容:
构建后操作-->
15.新增
HTML directory to archive(去哪里找相对于workspase路径reports)
把Index page[s](哪个文件)中的index.html 改成 reports.html
Report title(名字):pythonapttest Report,保存后再次构建
16.构建之后就会在job的菜单中显示报告文件
17.接下来就是构建完后如何将报告以邮件的形式发送到开发或者对报表较为关心的人
进入job配置的构建后操作tag列表,新增E-mail Notification,
Recipients(写入收件人的邮箱)多个人以英文的逗号隔开
但是这种方法只有在失败的时候才会发,成功不会将邮件发出去。
18.因此多数都会使用扩展板 Editable Email Notification,使用跨展板之前将新增这个不改变任何东西进行save,然后去配置
19.回到系统管理系统设置:包含(发件服务器,收件服务器),找到Extended E-mail Notification
首先配置发件服务器:qq发件服务器地址统一是:smtp.qq.com,如果是其他邮箱找运维或者开发拿smtp地址配上,
点击高级(advanced),打钩Use SMTP Authentication(指定发送邮箱):359747258@qq.com
特别注意:密码不是qq邮箱的密码,而是在邮箱页面设置里面进入账户列表(POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务)中的POP3/SMTP服务 (如何使用 Foxmail 等软件收发邮件?)和
IMAP/SMTP服务 (什么是 IMAP,它又是如何设置?)服务打开,如图
打开之后就会告知密码,把密码粘贴到password中即可
然后勾选Use SSL
SMTP port默认的端口是:465(仅限qq)
Default Content Type :选Plain Text (text/plain)/HTML (text/html)
配置默认的收件人Default Recipients:
发件邮箱:
要与jenkins管理员邮箱保持一致
配完后点击保存,如果配置不符合规则会报415认证错误,
20.配置完上面的操作后进入job 配置Editable Email Notification
如果已配置发件人Project From保持空白,如果要输入就写跟管理员的邮箱一致(发件人)
因为指定了收件人因此Project Recipient List中不做修改
Project Reply-To List默认回复类型也不做修改
邮件的类型(Content Type)选:Both HTML and Plain Text,及支持HTML又支持纯文本的
Default Content(邮箱的主题)也可以使用默认或者根据自己需要来修改
Attachments:可以把报告以附件的形式发送到我的邮件中,因此需要知道文件的相对路径
reports/reports.html
然后点开Advanced Setting... 查看Triggers,删掉默认的Triggers,任何add Triggers 选 Always(不管什么时候都发),删掉Developers,只发给Recipient List
这里的Recipient List 的邮箱好可直接粘到Project Recipient List中多个以逗号隔开就行如图
保存立即构建就会有邮件发送到指定的邮箱中
构建后的日志
如有保存注意检查构建后的环境Attachments格式是否写对