目录
一、实现思路
二、环境准备
1、在liunx上安装docker
2、docker安装jenkins
三、配置jenkins容器
四、 jenkins插件安装
1、安装git
2、安装docker
3、html Publisher安装
4、 pipeline安装
5、安装后重启jenkins容器
五、创建jenkins任务
1、重新登录jenkins,点击new item
2、选择创建pipeline项目 3、配置构建记录保存规则
4、配置git仓库
5、添加git凭证
6、配置完成点击保存即可
六、配置及构建
一、实现思路
1、在mac安装 docker
2、创建 jenkins 容器
3、jenkins 中创建 pipeline 项目
4、根据自动化项目依赖包构建 python 镜像(构建自动化 python 环境)
5、运行新的 python 容器,执行 jenkins 从仓库中拉下来的自动化项目
6、执行完成之后删除容器
二、环境准备
1、在liunx上安装docker
centos7安装docker_文小大的博客-CSDN博客
2、docker安装jenkins
进入dockerhub拉取镜像
Docker Hub
之后在已经安装好docker的liunx机器上执行该命令
我这里是拉取最后一个版本
docker pull jenkins/jenkins:lts
安装完成后查看镜像docker images,就可以看到刚刚拉取的镜像
3、使用刚刚拉取的镜像,启动jenkins容器
docker run -dit -p 1111:8080 --name jenkins-lem jenkins/jenkins:lts
参数说明:
-d:创建一个后台运行容器
-i:让容器的标准输入保持打开
-t:让Docker分配一个伪终端并绑定到容器的标准输入上
-p:将容器的端口暴露给宿主机端口
1111:8080 将宿主机的1111端口映射到容器的8080端口。访问宿主机的1111端口就是访问容器的8080端口
--name:容器名称
4、查看启动的jenkins容器
docker ps
三、访问前设置1、关闭防火墙
请参考第三小节:mac(Intel)+VMware虚拟机搭建_文小大的博客-CSDN博客
2、查看IP地址
ifconfig
四、配置jenkins容器
1、宿主浏览器jenkins
访问http://刚刚查到的IP地址:1111
2、获取密码:
1、从容器的log中查看
docker logs 容器名称
2、进入docker中,在页面提示的路径中查看
3、登录成功后,进入jenkins
这一步会比较慢,请耐心等待。
4、设置管理员用户名和密码(以后就用这个账号密码登陆你的 jenkins)
5、jenkins 初始化完成看到如下界面
五、 jenkins插件安装
接上一步开始使用jenkins,进入到如下界面。注,安装过过程中出现失败,就找到失败的插件重新安装一下就可以了。
1、安装git
2、安装docker
3、html Publisher安装
4、 pipeline安装
5、安装后重启jenkins容器
docker restart jenkins_save01
六、创建jenkins任务
1、重新登录jenkins,点击new item
2、选择创建pipeline项目 3、配置构建记录保存规则
4、配置git仓库
远程仓库地址要去gitee上去复制链接
5、添加git凭证
6、配置完成点击保存即可
七、配置及构建
1、将项目的依赖包导出到 requirements.txt 文件中,txt 文件名称可以随意写
pip freeze > requirements.txt
我的文件内容如下
unittestreport==1.3.2 openpyxl==3.0.7 ddt==1.4.2 pytest==6.2.2 selenium==3.141.0 pymysql==1.0.2 faker==8.1.0 jsonpath==0.82 BeautifulReport==0.1.3 rsa==4.7.2 pytest-html==3.1.1 allure-pytest==2.9.43 requests-toolbelt==0.9.1
2、在宿主机(安装 docker 的机子)上新建一个目录(我的目录在/app),将 requirements.txt 中的文件复制进去
mkdir /app
vim /app/requirements.txt
创建好之后查看一下,cat vim /app/requirements.txt
3、在app 目录下创建 Dockerfile 文件(文件名必须是 Dockerfile,没有后缀)
touch /app/Dockerfile
编辑Dockerfile:
vim Dockerfile
内容如下,(关于dockerfile文件的解释请查看)
FROM python:3.7.4 WORKDIR /app ADD ./requirements.txt /app RUN pip3 install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple CMD ["python3", "main.py"]
4、在 app 目录下执行镜像构建命令
docker build -t python3.7:annlin .
-t:镜像名称
python3.7:annlin # 这个是自己取的名字
点(.):点表示 Dockerfile 文件所在的目录,我现在在 app 目录下,点表示当前目录
5、构建成功后会看到一个新的镜像(命令:docker images)
7、创建 build.sh 文件并放到python项目的根目录下
echo "运行容器python执行自动化" docker run --rm -w=$WORKSPACE --volumes-from=jenkins_save01 python3.7:annlin echo "python执行自动化执行成功"
8、 写 Jenkinsfile 文件并将放到python项目的根目录下
pipeline{
//配置执行环境
agent any
//配置构建过程
stages{
stage('build'){
steps{
echo '开始执行shell脚本'
sh 'sh build.sh'
}
}//stage
}//stages
//配置构建后操作
post{
always{
echo 'Pipeline 构建成功'
publishHTML(target:[allowMissing: false,
alwaysLinkToLastBuild: true,
keepAll: true,
reportDir: 'reports',
reportFiles: '*.html',
reportName: 'My Reports',
reportTitles: 'The Report'])
}
}//post
}//pipeline
8、提交代码到git仓库
git add .
git commit -am'update'
git push
9、构建 jenkins 任务
10、查看构建日志
11、查看测试报告,此时的测试报告会没有样式,因为被 Jenkins 禁用了 CSS 样式,需要我们手动解决
12、解决测试报告没有样式的问题
把这个代码放进去执行:System.setProperty("
hudson.model.DirectoryBrowserSupport.CSP","")
执行成功返回是空,说明没问题
重新构建就可以看到漂亮的测试报告了



