pytest之fixture结合conftest.py文件使用+断言实战

pytest之fixture结合conftest.py文件使用

conftest.py--存放固件

在一个项目的测试中,大多数情况下会有多个类、模块、或者包要使用相同的测试夹具。这种情况下如果我们把测试夹具定义在某一个模块中则无法实现共享,针对这种情况,我们可以把需要共享的测试夹具放入一个单独的 conftest.py 文件中 ,这样多个可以实现多个测试模块共享了

python 复制代码
#读取数据的方式
import pytest


def read_yaml():
    return ['chenglong','zhenzidan','caiyilin']
@pytest.fixture(scope="function",autouse=False,params=read_yaml(),ids=["c","z","l"],name='db')
def exe_database_sql(request):
    print(request.param)
    print("执行sql查询")
    yield request.param
    print("关闭数据库连接")

固件的优先级

夹具定义可以通过参数 scope 指定夹具的级别,如果不指定夹具级别,scope 默认值为 function(用例级别)

用例级别:scope = function

测试类型:scope = class

模块级别:scope = module

包级别: scope = package

会话级别:scope = session

fixture里面有个scope参数可以控制fixture的作用范围:session > module > class > function

pytest执行流程

1.查间当前目录下的conftest py.文件.

2查间当前目录下的pytest.ini文件.

3查闻用例目录下的conftest.py文件.

4查i间py文件中是含有setup.teardown.setup_class.teardown_cass

5.再根据pytest.ini文件的测试用例的规则去查找用例并执行,

pytest之断言实战

python 复制代码
    def test_baili(self):
        print("测试百利老师")
        assert 1==1

    def test_tom(self):
        print("测试汤姆老师")
        assert 'a' in 'abc'

pytest结合allure-pytest插件生成美观的报告

  • dos窗口检查
  • pycharm终端检查
  • 生成临时报告
  • 输出报告



相关推荐
姚青&2 天前
Pytest 测试用例编写
测试用例·pytest
Warren982 天前
Pytest Fixture 作用域与接口测试 Token 污染问题实战解析
功能测试·面试·单元测试·集成测试·pytest·postman·模块测试
serve the people3 天前
python环境搭建 (七) pytest、pytest-asyncio、pytest-cov 试生态的核心组合
开发语言·python·pytest
真智AI4 天前
用 LLM 辅助生成可跑的 Python 单元测试:pytest + coverage 覆盖率报告(含运行指令与排坑)
python·单元测试·pytest
Warren984 天前
Allure 常用装饰器:实战用法 + 最佳实践(接口自动化)
运维·服务器·git·python·单元测试·自动化·pytest
Warren985 天前
Pytest Fixture 到底该用 return 还是 yield?
数据库·oracle·面试·职场和发展·单元测试·pytest·pyqt
Warren986 天前
Pytest Fixture 作用域详解:Function、Class、Module、Session 怎么选
面试·职场和发展·单元测试·pytest·pip·模块测试·jira
我的xiaodoujiao7 天前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 44--将自动化测试结果自动推送至钉钉工作群聊
前端·python·测试工具·ui·pytest
我的xiaodoujiao7 天前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 45--生成项目需要的requirements.txt依赖文件
python·学习·测试工具·pytest
月明长歌7 天前
全栈测试修炼指南:从接口策略到 Python+Pytest+Allure 企业级架构
python·架构·pytest