互联网科技

python 持续集成实践 - 代码规范检查和单元测试

2018-11-18  本文已影响1人  scottlin

介绍

利用 pylint 和 pytest,分别作为 python 代码规范检查和单元测试工具,并通过 与
jenkins 实现 python 持续集成

pylint 介绍

pylint 是一个 Python 代码分析工具,它分析 Python 代码中的错误,查找不符合代码风格标准(Pylint 默认使用的代码风格是 PEP 8,具体信息,请参阅参考资料)和有潜在问题的代码。

pytest 介绍

pytest 是一个非常成熟的全功能的 python 测试框架,主要特点有以下几点:

jenkins 集成 pylint 和 pytest

1.打开 jenkins,进入 job 页面


2.点击 “配置”



下面的配置都是在这里页面

3.配置 job 的源码
参考:

https://www.jianshu.com/p/e7678dbe4222

4.配置 job 的构建
(1).增加构建步骤,选择 “执行 shell”



分别介绍一下命令

(2).添加 docker-compose 命令,启动镜像

docker-compose up -d
docker-compose 请参考
https://blog.csdn.net/pushiqiang/article/details/78682323

(3).添加 docker exec 命令,进入容器

docker exec -it <CONTAINER ID> /bin/bash

(4).添加 pylint 命令,配置代码规范检查
--evaluation="error + warning + refactor + convention" 输出代码规范检查 4种 问题格式,后期集成到流水线与阈值判断要用

pylint $(find . -name "*.py") -f parseable -d I0011,R0801 --evaluation="error + warning + refactor + convention" | tee pylint.log
pylint.log:代码规范检查输出报告

(5).添加 pytest 命令,配置单元测试

py.test test --junit-xml=report.xml --cov-report=xml --cov=./
report.xml:单元测试结果报告
covage.xml:单元测试覆盖率报告,其中覆盖率值后期集成到流水线与阈值判断要用

4.配置 job 的构建后操作
(1).增加构建后操作步骤


image.png

(2).选择 Report Vioations,集成代码规范检查报告


(3).选择 Publish JUnit test result report,集成单元测试结果报告


(4).选择 Publish Cobertura Coverage Report,集成单元测试覆盖率报告


上一篇 下一篇

猜你喜欢

热点阅读