基于配置文件运行pytest

基于配置文件运行pytest,需要创建pyteest.ini文件

  • 创建pytest.ini位置:创建在项目根目录下

  

  • pytest.ini文件说明
    • pytest.ini文件是pytest的全局配置文件,一般放在项目的根目录下
    • 固定的配置文件(pytest.ini),不能修改文件名
    • 可以改变pytest的运行方式,设置配置信息,读取后按照设置的内容去运行
    • pytest.ini文件中不能包含中文,
  • 配置文件内容
    [pytest]
    addopts = -s -v
    testpaths = ./scripts
    python_files = test_*.py
    python_classes = Test*
    python_functions = test_*

    配置文件解释:

    • addopts:命令行参数,以空格进行分隔

      例如:addopts = -v -s --reruns 1 --html=./reports/result.html

      • -v:控制pytest输出结果的详细程度,未加前只打印模块名,加v后打印类名、模块名、方法名,显示更详细的信息
      • -s:在pytest输出中,输出我们自己的print,默认是不输出的
      • -vs:这两个参数可以一起使用
      • –-reruns:失败重跑次数(前提需安装:pytest-rerunfailures插件),如:--reruns 2
      • --reruns-delay:每次重试前等待2秒,如--reruns-delay 2
      • –count:重复执行次数,需要安装pytest-repeat
      • -q: 简化输出信息,表示只显示整体测试结果
      • -n:支持多线程或者分布式运行测试用例(前提需安装:pytest-xdist插件)
      • -m: 运行指定标签的测试用例
      • -x: 一旦错误,则停止运行
      • –maxfail: 设置最大失败次数,当超出这个阈值时,则不会在执行测试用例
      • –html:生成html的测试报告(前提需安装:pytest-html插件) 如:--html = ./reports/result.html,表示生成测试报告保存在reports下

      注意:当ini配置文件的参数与run文件里的命令参数重复时,命令行的参数值会覆盖ini配置文件中定义的参数值

    • testpaths:设置执行路径

      例如:testpaths = ./scripts

      • 读取测试用例的文件夹,执行测试用例时,会从该 ./scripts文件夹下查找可执行文件
      • 多个路径用空格分隔
      • 改文件夹下的可执行的py文件不能相同,否则会报错
    • python_files:可执行的py文件匹配规则

      例如:python_files = test_*.py

      • 执行以test_开头的所有py文件,如果设置了testpaths,就会从所设置的文件夹下查找以test_开头的所有py文件
      • 可配置多个,用空格隔开,如:python_files =test_*.py hahaha_*.py,表示以test_*和hahaha_*开头的py文件
    • python_classes:可执行的py文件中类的匹配规则

      例如:python_classes = Test*

      • 执行以Test开头的的类名
    • python_functions:可执行的py文件中的方法或函数名规则

      例如:python_functions = test_*

      • 执行以test_开头的方法名或函数名
posted @ 2023-04-12 17:28  A熙  阅读(83)  评论(0)    收藏  举报