dockers+Jenkins+git+自动化框架

1.我现在用python编写了一个自动化测试的框架,但是这个自动化框架仅是部署在我的本地电脑中,在实际的公司的运用场景中,自动化测试框架应该是部署在云服务器上,例如部署在Linux服务器上,然后把自动化框架部署在Jenkins上,并且用钩子和git链接,只要有人提交代码Jenkins就会自动运行我写好的自动化框架运行里面的测试用例,并且通过dockers来管理Jenkins的启动和关闭?

将你的自动化测试框架部署到云服务器并集成到 CI/CD 流程(如 Jenkins)中是一个重要的步骤。

  1. 准备云服务器
  2. 安装 Docker 和 Jenkins
  3. 创建 Jenkins Pipeline
  4. Git 集成
  5. 运行自动化测试框架

1. 准备云服务器

首先,你需要一台云服务器。可以选择 AWS、Azure、Google Cloud 或其他云服务提供商。这里以 Linux 服务器为例:

  • 启动云服务器

    • 选择合适的实例类型(根据你的测试需求)。
    • 确保你为服务器配置了足够的存储和性能。
  • SSH 连接到服务器

    ssh username@your-server-ip

2. 安装 Docker 和 Jenkins

安装 Docker

在你的 Linux 服务器上,首先安装 Docker:

bash 复制代码
# 更新包索引
sudo apt-get update

# 安装必要的包,以允许 apt 使用 HTTPS
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common

# 添加 Docker 的官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

# 添加 Docker 的稳定版本库
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

# 更新包索引
sudo apt-get update

# 安装 Docker
sudo apt-get install docker-ce

# 验证 Docker 是否安装成功
sudo docker --version
安装 Jenkins

接下来,安装 Jenkins。可以使用 Docker 来简化安装过程。

bash 复制代码
# 拉取 Jenkins 镜像
sudo docker pull jenkins/jenkins:lts

# 运行 Jenkins 实例
sudo docker run -d -p 8080:8080 -p 50000:50000 jenkins/jenkins:lts
  • 这将 Jenkins 绑定到 8080 端口,你可以通过 http://your-server-ip:8080 访问 Jenkins。

3. 创建 Jenkins Pipeline

初次设置 Jenkins
  1. 访问 Jenkins

    • 打开浏览器,访问 http://your-server-ip:8080
    • 根据提示输入初始管理员密码(可以通过运行 sudo docker exec -it <container_id> cat /var/jenkins_home/secrets/initialAdminPassword 获取)。
  2. 安装推荐的插件

  3. 创建一个新的 Pipeline 项目

    • 在 Jenkins 主界面上,点击 新建任务,输入项目名称,选择 Pipeline 类型,点击确定。
编辑 Pipeline 代码

在 Pipeline 的配置页面中,选择 Pipeline 的定义方式为 Pipeline script,然后在脚本框中输入如下:

bash 复制代码
pipeline {
    agent {
        docker {
            image 'python:3.8'  // 使用 Python Docker 镜像
            args '-v /var/run/docker.sock:/var/run/docker.sock'  // 允许 Docker 在 Docker 中运行
        }
    }
    stages {
        stage('Checkout') {
            steps {
                checkout scm  // 从 Git 仓库中检出代码
            }
        }
        stage('Install Dependencies') {
            steps {
                sh 'pip install -r requirements.txt'  // 安装依赖
            }
        }
        stage('Run Tests') {
            steps {
                sh 'pytest'  // 运行自动化测试
            }
        }
    }
}

4. Git 集成

配置 Git 仓库
  1. 在 Jenkins 中配置你的 Git 仓库:

    • 在 Pipeline 项目的配置页面,找到 源代码管理,选择 Git,并填写你的仓库 URL。
  2. 配置事件触发器:

    • 找到 构建触发器,选择 GitHub hook trigger for GITScm polling 或者其他适合的选项,以便在代码提交时自动触发构建。
设置 Webhook(如果是 GitHub)
  1. 在 GitHub 仓库的设置中,选择 Webhooks
  2. 添加一个新的 Webhook,指向 http://your-server-ip:8080/github-webhook/,选择 application/json

运行自动化测试框架

测试流程
  • 现在,当你向 Git 仓库提交代码时,Jenkins 会自动触发构建,拉取最新代码,并运行你的自动化测试框架。
  • 你可以在 Jenkins 的构建历史中查看每次构建的结果和日志。

总结

通过以上步骤,你应该能够将你的 Python 自动化测试框架成功部署到云服务器上,并通过 Jenkins 实现 CI/CD 流程。你可以根据具体需求进一步完善这个流程,例如添加通知、测试报告、环境配置等。

相关推荐
程序媛Dev1 小时前
50.4k Star!我用这个神器,在五分钟内搭建了一个私有 Git 服务器!
运维·服务器·git
澈轩4 小时前
Git 用得好,下班走得早
git
syty20205 小时前
elastic search 是如何做sum操作的
运维·jenkins
人间造梦工厂5 小时前
Git Bash 别名
git
厦门辰迈智慧科技有限公司6 小时前
水闸自动化监控系统解决方案
运维·服务器·物联网·安全·自动化·监测
画个太阳作晴天10 小时前
解决 Android Studio 中 build 目录已被 Git 跟踪后的忽略问题
git
wjs04014 小时前
Git常用的命令
java·git·gitlab
原野风霜32414 小时前
Git使用总结
git
青草地溪水旁15 小时前
Git Bash 中 Git 命令的实用主义指南
git·bash
至善迎风16 小时前
版本管理系统与平台(权威资料核对、深入解析、行业选型与国产平台补充)
git·gitee·gitlab·github·svm