Pytest VS Unittest 简单说一下之间的优缺点

Posted yannuo-666

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Pytest VS Unittest 简单说一下之间的优缺点相关的知识,希望对你有一定的参考价值。

一、什么是单元测试框架?

unittest 是python标准的单元测试框架模块

pytest 是python第三方库的测试框架

二、从兼容性方面考虑

因unnitest是标准库,所以unnitest的兼容性更强

三、安装方面

unnitest是标准库,python是自带的,安装python以后可以直接导入

第三方库:需要独立安装,要注意兼容性,有可能会存在安装不成功,或者是某些库的功能使用不了。

四、unittest 的使用更加复杂一些, pytest 更加容易使用。

eg:

unittest 

第一步:初始化测试套件

获取当前目录,
第二部:testloader.discover(test_case_dir), 加载测试用例
第三部:测试用例添加到测试套件
#生成测试报告的目录和文件名
第四步:启动器, 运行, testrunner.run()


pytest , 自动收集测试用例,自动执行测试用例。

import pytest

pytest.main()

五、断言

pytest    assert 1=1

unittest  assertEqual(expected,autual)

六、pytest可以灵活运用指定的测试用例,标签化,回归,正向、冒烟、登陆

七、pytest (夹具)环境管理灵活,会话、模块,哪个用,哪个不用。fixture,setup,tearDown,setupClass,setUpModule

八、pytest有丰富的插件,测试报告。eg: allure

九、pytest 和unnitest/nose兼容 意思是以unnitest的框架写的用例,以pytest去执行是可以的,但是反之就不行。

 

以上是关于Pytest VS Unittest 简单说一下之间的优缺点的主要内容,如果未能解决你的问题,请参考以下文章

Python- unittest 单元测试 (测试框架)和pytest 的区别

pytest简介

pytest简介

pytest框架的安装与使用

python - pytest

Pytest01--讲解