目录
前言
1、配置base_url
2、有头模式/无头模式
3、指定浏览器+多浏览器执行
4、失败case:截图、录屏、tracing、重复运行
5、case并行
前言
- 使用pytest.ini文件目的:使用 pytest CLI 运行测试【CLI:command-line interface,命令行接口】
- 项目中两个基本的依赖记得添加:
playwright==1.40.0 pytest==7.4.3
- pytest.ini 文件是用于配置 pytest 测试用例运行规则的文件。pytest.ini 配置文件支持的参数有以下几类:
- 匹配测试文件和测试函数的过滤参数
- 测试用例执行参数
- 测试报告输出参数
- 临时文件及路径参数
- 插件参数
注意,创建好pytest.ini文件,添加以下内容:
?
1、配置base_url
依赖:pytest-base-url==2.0.0
在pytest.ini中可以这样配置:
?
个人建议这样配置:
?
2、有头模式/无头模式
添加--headed选项就表示有头模式,去掉不写就是无头模式【默认】
?
3、指定浏览器+多浏览器执行
在pytest.ini文件中,addopts命令后:添加-- browser选项,-- browser可重复写多次,表示多个浏览器执行:
?
写多个:
?
此时运行1个case,就相当于是有2个case,第一个case在Firefox上执行,第二次在webkit上执行,串行执行
4、失败case:截图、录屏、tracing、重复运行
在pytest.ini文件中,addopts命令后:添加-- tracing选项、--screenshot、-- video:
?
注意看,他们的选项是有差异的,tracing和video是:retain-on-failure,意思是只保留失败case的tracing和video,而screenshot是only-on-failure。意思是只在失败case这里截图。
这几个选项也可以填其他参数:--tracing【on,off,或retain-on-failure (默认值: off )】;--video 【on,off,或retain-on-failure (默认值: off )】;--screenshot 【on,off,或 only-on-failure (默认值: off )】
失败case:
截图点击就可以看;视频:把视频拖到浏览器上就可看了;
trace:
在浏览器中打开一下链接:Playwright Trace Viewer
选择文件,点击后,找到刚才目录下的trace.zip文件,选择打开:
重复运行:
依赖:pytest-rerunfailures==13.0
错误的case,重新运行,最多重新运行3次
或者:
添加了一个间隔时间,上述就是一个case运行失败后,会间隔100秒后再运行
5、case并行
依赖:pytest-xdist==2.2.1
- 注意上述的base-url必须放下面,否则会报错的-获取的base_url为空 了,因为pytest-xdist 与 pytest-base-url 不兼容【也就是本文中目录1下,更建议第二种写法】
- 后面使用-n=auto,或者-n=2,直接指定成特定数字
本栏目会持续更新~