pytest和unittest的区别:
1.安装需求不同。pytest为第三方单元测试库,需额外安装;unittest为标准库,无需额外安装。
2.用例编写规则不同。pytest编写规则较为简单,兼容性较好;unittest需按照固定的格式编写,较为复杂。
pytest优点:
能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动化测试、接口自动化测试(pytest+requests)
pytest具有很多第三方插件,并且可以自定义扩展,比较好用的如pytest-selenium(集成selenium)、pytest-html(完美html测试报告生成)、pytest-rerunfailures(失败case重复执行)、pytest-xdist(多CPU分发)等
测试用例的skip和xfail处理
可以很好的和jenkins集成
report框架----allure 也支持了pytest
Pytest 是 python2 自带的自动化测试框架,python3 的版本的话 pytest 框架独立出来,需要 pip 进行安装
pip install -u pytest
1、测试文件以 test_xx.py 命名需要以 test_开头(或_test 结尾);
2、测试类以 Test_开头,并且不能带有 init 方法;
3、测试函数或方法以 test_xx 开头;
一、编写测试用例:
pytest 执行时默认是执行指定路径下以test_开头或者以_test 结尾的文件里的测试类或者方法,默认是执行以 Test_开头的类和 test_开头的方法。
二、断言
pytest 一共有五种断言:
assert xx 判断 xx 为真
assert not xx 判断 xx 不为真
assert a in b 判断 b 包含 a
assert a == b 判断 a 等于 b
assert a !=b 判断 a 不等于 b
三、用例执行
使用命令行执行
cmd 窗口,然后执行 pytest 文件路径/测试文件名例如 pytest ./test_tt.py
如果当前路径已经是放测试用例文件的文件夹下,想要测试文件,则直接可以 输入pytest 测试文件名 即可:
如果只输入 pytest,则会默认执行当前文件夹下所有以 test_开头(或_test 结尾)的文件
如果提示pytest不是内部或者外部命令 在cmd下输入:pip install -U pytest 即可
pytest -v test_demo1.py
输出用例详细的执行信息
IDE(PyChram)执行
执行当前文件所在路径下的文件,指定文件名则执行指定的文件,若没指定,执行所有 test_开头或者_test 结尾的文件。
标签:开头,框架,python,xx,pytest,测试,test,执行 From: https://www.cnblogs.com/mayyan/p/17303540.html