实现各个项目的并发执行,同时也能保证每一个项目也能实现单独运行python
1、须要安装第三方库,pytest-xdist
session
2、test用例的组织架构以下:架构
test 是用例的最高层 │ conftest.py # conftest文件,scope="session",scope级别为session,做用一保证整个进程内惟一,做用二配合python多进程、线程通讯,造成统一的对象,如想要生成一个在各个进程、线程内通用的对象时存放于此并发
│ run.py # 并发执行的run文件,__main__ pytest.main(['-s', '-v', '-n=2'])须要指定并发的进程数ide
│ __init__.py│ ├─test_项目组1│ # 项目组1的测试用例集,目录函数
│ conftest.py│ # conftest文件,里面存在初始化操做,如初始化driver,指定日志等,对项目组1有效,主要为各个项目组配合config内的数据提供特殊化信息测试
│ test_1_项目组1.py│ # 项目组1的用例1spa
│ test_2_项目组1.py│ # 项目组2的用例2线程
│ run_项目组1.py│ # 项目组1的运行文件 __main__ 函数 pytest.main(['-s', '-v']) 用于单独执行项目组1的用例3d
│ __init__.py │ ├─test_项目组2│ # 项目组2的测试用例集,目录
│ conftest.py│ # conftest文件,里面存在初始化操做,如初始化driver,指定日志等,对项目组2有效,scope="package",scope级别为package及其如下,主要为各个项目组配合config内的数据提供特殊化信息
│ test_2_项目组2.py│ # 项目组2的用例1
│ run_项目组2.py│ # 项目组2的运行文件 __main__ 函数 pytest.main(['-s', '-v']) 用于单独执行项目组2的用例
│ __init__.py
ps:当前只是初稿,后续会将各个项目的配置文件等信息补充,作到既能单独运行某个项目的用例,也能并发执行全部项目的用例