当前位置: 首页 > 后端技术 > Python

pytest、tox、Jenkins实现python接口自动化和持续集成

时间:2023-03-26 13:15:24 Python

pytest介绍pytest是一款强大的python测试工具,可以应对各种级别的软件测试。可以自动发现并执行测试,拥有丰富的基础库,可以大大提高用户编写测试用例的效率,具有扩展性,用户也可以编写插件实现特定功能,或者安装第三方插件,很容易和其他工具集成,比如持续集成,接口自动化测试等。小编之前也写过几篇关于pytest的文章,大家可以去首页看看。tox简介tox是一个命令行工具,可以让测试在多个环境中执行。tox不仅可以测试不同的python版本,还可以用它来测试不同的依赖配置和不同的操作系统配置。工作原理大致是,通过setup.py文件为被测程序创建一个源码安装包,它会检查tox.ini中所有的环境设置,并对每个环境进行如下操作:使用的.tox目录用pip安装依赖包在步骤1的虚拟环境中使用pip安装自己的包运行测试用例下面通过一个例子来看看tox的运行过程:新建一个tox.ini项目根目录下的文件,然后添加如下配置[tox]envlist=py36[testenv:dev];deps告诉tox确保安装了pytest,如果有多个测试依赖,可以按行列出,也可以指定版本deps=pytest;告诉tox在每个测试环境中运行pytestcommands=pytest--junitxml=junit-{envname}.xml[pytest]markers=smoke:用于烟雾测试getaddopts=-rsxX-l--tb=short--strictxfail_strict=trueminversion=3.0norecursedirs=.*venvsrc*.eggdistbuildtestpaths=testspython_classes=*TestTest**Suit在项目根目录执行tox-edev查看输出。tox1.jpgJenkins配置安装python插件tox2.png创建多配置样式jobtox3.jpg源码配置tox4.jpg配置axestox5.jpg添加python构建脚本tox6.pngimporttoxos.chdir(os.getenv("WORKSPACE"))毒素。cmdline()然后构建并执行,就是这样。这篇文章比较粗,后面会补充tox的介绍和Jenkins的配置说明。欢迎到我的博客。实测内容更多!!