pytest介绍
pytest是一款强大的python测试工具,可以胜任各种级别的软件测试工作,可以自动查找测试用并执行,并且有丰富的基础库,可以大幅度提高用户编写测试用例的效率,具备可扩展性,用户自己也可以编写插件实现特定的功能,也可以安装第三方插件,非常容易的与其他工具集成到一起,比如持续集成、接口自动化测试等。小编之前也写过几篇关于pytest的文章,可以到主页查看哈。
tox介绍
tox是一个命令行工具,允许测试在多种环境下执行,tox不仅能测试不同的python版本,还可以用它来测试不同的依赖配置和不同的操作系统的配置。
工作原理大致是,通过setup.py文件为待测程序创建源码安装包,它会查看tox.ini中的所有环境设置,并针对每个环境执行如下操作:
- 1、在.tox目录下创建一个虚拟环境
- 2、使用pip安装依赖包
- 3、使用pip在步骤1的虚拟环境中安装自己的程序包
- 4、运行测试用例
下面通过一个实例来看一下tox的运行过程:
在项目根目录下新建tox.ini文件,然后加入下面的配置
[tox]
envlist = py36
[testenv:dev]
; deps告诉tox确保pytest已经安装,如果有多个测试依赖,可以按行罗列,同时也可以指定版本
deps =
pytest
; 告诉tox在每个测试环境里运行pytest
commands = pytest --junitxml=junit-{envname}.xml
[pytest]
markers =
smoke: 用于冒烟测试
get
addopts = -rsxX -l --tb=short --strict
xfail_strict = true
minversion = 3.0
norecursedirs = .* venv src *.egg dist build
testpaths = tests
python_classes = *Test Test* *Suit
在项目根目录下执行tox -e dev查看输出内容。
Jenkins配置
- 安装python插件
- 创建一个多配置风格的job
- 源码配置
- 配置axes
- 添加python构建脚本
import toxos.chdir(os.getenv("WORKSPACE"))tox.cmdline()
然后构建执行,就可以了。
如果你
①从事功能测试,想进阶自动化测试
②在测试界混了1、2年,依然不会敲代码
③面试大厂却屡屡碰壁
我邀你进群吧!来吧~~测试员,313782132(Q群里有技术大牛一起交流分享,学习资源的价值取决于你的行动,莫做“收藏家”)获取更多大厂技术、面试资料
如果对python自动化测试、web自动化、接口自动化、移动端自动化、面试经验交流等等感兴趣的测试人,可以关注微信公众号:【伤心的辣条】,获取软件测试工程师大厂面试资料!
最后:
凡事要趁早,特别是技术行业,一定要提升技术功底,丰富自动化项目实战经验,这对于你未来几年职业规划,以及测试技术掌握的深度非常有帮助。