1、pytest安装
pytest是web自动化的一种框架,对测试用例进行管理、执行、记录、出具报告的。pytest是一种外置框架,要想使用必须先安装

2、pytest与unittest的区别
unittest:
1、内置库,不用安装,直接调用
2、使用范围:可在java与python中使用
3、使用过程比较复杂,必须有以下4步:testcase,testsuite,testloader,testrunner
4、可以使用的插件少
pytest:
1、外置库,需要安装才能使用
2、适用范围:python
3、使用过程简单:编写测试用例--执行
4、可用插件多
3、pytest的常用插件
pytest:框架本体
pytest-html 生成HTML的测试报告
pytest-xdist 并行执行测试用例
pytest-rerunfailures 失败重跑
pytest-ordering 测试用例的顺序
allure-pytest 生成allure报告
想要使用以上插件都需要先安装,安装方法同pytest,可以同时安装

4、pytest的使用
4.1 测试用例的编写
编写规则:
1、从当前目录开始去遍历所有目录
2、只会找以test_*开头或者以*_test结尾的文件
3、在导入的文件中去找测试用例
3.1 test开头的函数
3.2 以Test开头的类及方法
3.3 pytest能兼容unittest的测试用例
eg:编写测试用例框架
#引入pytest
import pytest
def test_a():
assert 1==1
def test_b():
assert 1==1
if __name__ == '__main__':
pytest.main()4.2 测试用例的执行
通过代码执行:pytest.main()
a、执行当前文件中的测试用例,在main函数下执行pytest.main()
b、执行某个指定文件下的用例,在pytest.main()中放文件路径

c、执行时可能会用到的参数
-s 要显示print或logger的内容
-v 显示详细执行信息
-q 安静模式,不输出与环境相关信息
d、执行用例后生成报告
1、生成html报告
--html=path
path为报告的路径
2、生成xml报告
--junitxml=path
注意:若是运行没有报错,但是没有生成报告,需要更改设置。
file-->setting-->tools-->python integrateted tool-->testings-->unittest


3、生成allure报告
1)在pytest.main()中先生成allure的结构目录
'--alluredir','path'

2)生成测试报告
1.安装allure工具,下载包,解压(记住路径)
2.配置环境变量
找到bin的路径,依照以下步骤进行环境变量的配置





新建之后将bin的路径放置确定即可。
3)进入cmd,进到要生成报告的目录下,执行以下命令:

运行后生成以下文件,其中index.html就是allure报告

如果不想在窗口执行,需要配置用户环境变量,如下操作:

进行环境变量配置之后就可以在main函数下用命令进行执行

allure报告:

总结:pytest是比较简洁易用的,在unittest的基础上简化了很多操作,实现的功能齐全,在当下是使用比较广泛的自动化框架。