git+pytest
时间: 2023-12-01 20:40:49 浏览: 71
使用git和pytest可以实现自动化测试,具体步骤如下:
1. 在git上创建一个仓库,并将测试代码上传到仓库中。
2. 在Jenkins中配置好git的相关信息,以便拉取代码。
3. 在Jenkins中配置好pytest的相关信息,例如pytest插件、运行规则、参数、pytest.ini配置文件等。
4. 在Jenkins中配置好Allure报告生成,以便生成测试报告。
5. 在Jenkins中配置好定时任务,以便定期执行测试。
下面是一个示例脚本,可以在Jenkins中执行:
```bash
#!/bin/bash -il
# 拉取代码
cd xxx/xxx/xxx/xxxx/xxxx/xxx/test_case
git pull
# 执行测试
python3.6 -m pytest --alluredir ${WORKSPACE}/report
# 生成Allure报告
allure generate ${WORKSPACE}/report -o ${WORKSPACE}/allure-report --clean
```
相关问题
怎么从0到1使用 Docker + Jenkins + Git + Pytest + Allure 搭建项目自动化框架
搭建项目自动化框架需要以下步骤:
## 1. 安装 Docker 和 Docker Compose
Docker 是一种容器化技术,可以轻松部署和管理应用程序。Docker Compose 是 Docker 的一个工具,可以通过 YAML 文件定义和运行多个容器。
## 2. 安装 Jenkins
Jenkins 是一个流行的开源持续集成和持续交付工具,可以自动化构建、测试和部署应用程序。
可以使用 Docker 安装 Jenkins,具体步骤如下:
```bash
docker run -d --name jenkins -p 8080:8080 -p 50000:50000 jenkins/jenkins:lts
```
其中,`-d` 参数表示以后台模式运行容器,`--name` 参数指定容器名称,`-p` 参数指定宿主机和容器之间的端口映射,`jenkins/jenkins:lts` 表示使用最新的 Jenkins 长期支持版本。
## 3. 安装 Git
Git 是一个流行的分布式版本控制系统,可以管理代码变更历史记录。
可以使用以下命令安装 Git:
```bash
sudo apt-get install git
```
## 4. 安装 Pytest
Pytest 是一个 Python 测试框架,可以用于编写单元测试和集成测试。
可以使用以下命令安装 Pytest:
```bash
pip install pytest
```
## 5. 安装 Allure
Allure 是一个用于生成漂亮测试报告的开源框架,支持多种语言和测试框架。
可以使用以下命令安装 Allure:
```bash
sudo apt-add-repository ppa:qameta/allure
sudo apt-get update
sudo apt-get install allure
```
## 6. 编写 Docker Compose 文件
在项目根目录下创建一个名为 `docker-compose.yml` 的文件,并添加以下内容:
```yaml
version: '3'
services:
jenkins:
image: jenkins/jenkins:lts
container_name: jenkins
ports:
- "8080:8080"
- "50000:50000"
volumes:
- "./jenkins_home:/var/jenkins_home"
restart: always
app:
build: .
command: pytest
volumes:
- "./:/app"
depends_on:
- jenkins
environment:
- ALLURE_RESULTS_DIR=allure-results
restart: always
```
其中,`jenkins` 服务使用 Jenkins 镜像启动一个容器,并映射宿主机的 `8080` 和 `50000` 端口到容器的同名端口上。`volumes` 参数指定将 Jenkins 主目录挂载到宿主机的 `./jenkins_home` 目录上,以便持久化存储 Jenkins 配置和数据。
`app` 服务使用当前目录的 Dockerfile 构建一个容器,并运行 Pytest 命令。`volumes` 参数将当前目录挂载到容器的 `/app` 目录上,以便容器内部可以访问测试代码和配置文件。`depends_on` 参数指定 `app` 服务依赖 `jenkins` 服务。`environment` 参数指定测试结果将存储在 `allure-results` 目录中。
## 7. 编写 Jenkinsfile
在项目根目录下创建一个名为 `Jenkinsfile` 的文件,并添加以下内容:
```groovy
pipeline {
agent {
docker {
image 'python:3.8-slim'
}
}
stages {
stage('Build') {
steps {
sh 'pip install -r requirements.txt'
}
}
stage('Test') {
steps {
sh 'pytest --alluredir allure-results'
}
post {
always {
allure([
includeProperties: false,
jdk: '',
properties: [],
reportBuildPolicy: 'ALWAYS',
results: [[path: 'allure-results']]
])
}
}
}
}
}
```
其中,`agent` 参数指定使用 Docker 容器运行 Jenkins Pipeline。`stages` 参数指定多个阶段,包括 `Build` 和 `Test`。
在 `Build` 阶段中,使用 `pip` 命令安装测试依赖。在 `Test` 阶段中,使用 `pytest` 命令运行测试,并将测试结果存储在 `allure-results` 目录中。
`post` 参数指定后置动作,使用 Allure 插件生成测试报告。
## 8. 启动 Jenkins 和应用程序
使用以下命令启动 Jenkins 和应用程序:
```bash
docker-compose up
```
## 9. 在 Jenkins 中创建 Pipeline
访问 `http://localhost:8080`,使用初始密码登录 Jenkins。在首页中选择“新建 Item”,创建一个名为 `my-pipeline` 的 Pipeline 项目。
在配置页面中,选择“Pipeline script from SCM”,并指定 Git 仓库地址和 Jenkinsfile 所在的分支。
保存配置后,点击“Build Now”按钮,即可开始构建项目。在项目构建完成后,可以在 Allure 报告中查看测试结果。
阅读全文