Jenkins+Docker に基づく自動テスト


コンピューター構成: Windows 10、Asus Tianxuan、R9-4900H、RTX2060


1. 事前タスク


1. Docker の使用
2. Jenkins の使用

2. 準備


1. Docker デスクトップ クライアントを起動します。


2. Jenkins サービスを開始します。


3. スクリプトを書く


1.Dockerfile スクリプト ファイル。

自動化プロジェクト ディレクトリに Dockerfile ファイルを書き込み、カスタム イメージ ファイルを作成します。

# 获取镜像
FROM markadams/chromium-xvfb-py3

# 设置时区
ENV TZ 'Asia/Shanghai'

# 设置编码方式
ENV LANG C.UTF-8

# 设置环境变量
ENV PATH=$PATH:/code

# 安装字体
COPY ./resources/simsun.ttf /usr/share/fonts/ttf-dejavu/simsun.ttf

# 拷贝镜像源
COPY ./resources/sources.list /etc/apt/sources.list

# 添加代码到镜像
COPY . /code

# 更新apt-get
RUN apt-get update

# 安装pip
RUN apt-get install -y python3-pip --allow-unauthenticated

# 安装依赖
RUN pip3 install -r /code/requirements.txt

# 运行程序
CMD ["python3", "/code/main/main.py"]

2. Jenkins パイプライン スクリプト。

Jenkins プロジェクトを構築するための Jenkins パイプライン スクリプトを作成します。

pipeline {
    
    
    agent any
    environment {
    
    
        /* Git用户名称 */
        gitUsername = ''
        /* 自动化仓库名称 */
        repositoryName = ''
        /* 自定义镜像名称 */
        imageName = ''
        /* 自定义镜像版本 */
        imageTag = ''
        /* 自定义容器名称 */
        containerName = ''
    }
    stages {
    
    
        stage('前置工作') {
    
    
            steps {
    
    
                echo '工作目录'
                sh 'pwd'
                echo '清理历史文件'
                sh 'rm -rf ${WORKSPACE}/${repositoryName}'
                echo '拉取项目'
                sh 'git clone [email protected]:${gitUsername}/${repositoryName}.git'
                echo '查看镜像'
                sh 'docker images'
                echo '查看容器'
                sh 'docker ps -a'
                echo '构建镜像'
                sh '''cd ${repositoryName}/
                    docker build -t ${imageName}:${imageTag} .
                '''
            }
        }
        stage('执行测试') {
    
    
            steps {
    
    
                echo '运行容器'
                sh 'docker run -i --name=${containerName} ${imageName}:${imageTag}'
            }
        }
        stage('后置工作') {
    
    
            steps {
    
    
                echo '保存报告'
                sh 'docker cp ${containerName}:/code/reports ./${repositoryName}/reports'
                echo '删除容器'
                sh 'docker rm ${containerName}'
                echo '删除镜像'
                sh 'docker rmi "${imageName}:${imageTag}"'
            }
        }
    }
    post {
    
    
        success {
    
    
            echo '查看镜像'
            sh 'docker images'
            echo '查看镜像'
            sh 'docker ps -a'
            echo '执行成功'
        }
        failure {
    
    
            echo '查看镜像'
            sh 'docker images'
            echo '查看镜像'
            sh 'docker ps -a'
            echo '执行失败'
        }
    }
}

4. 操作手順


1. Jenkins にログインします。



2. パイプライン プロジェクトを作成します。



3. [OK] をクリックした後、[構成] -> [パイプライン] にパイプライン スクリプトを入力します。



4. [保存] をクリックした後、Jenkins プロジェクトを手動でビルドします。



5. 結果を表示します。

実行ステータスは、サンプル プロジェクトが完了まで実行されたことを示します。



コンソール出力には、サンプル プロジェクトの 6 つのテスト ケースが成功したことが示されています。




間違いや改善点があれば積極的にご指摘ください!

おすすめ

転載: blog.csdn.net/embracestar/article/details/127222888