我可以在conftest.py

时间:2020-04-03 06:28:02

标签: python testing pytest

我可以在conftest.py中定义夹具以外的功能吗?

如果我有conftest.py

中定义的add()函数

我可以仅通过调用add()来使用test_add.py文件中的函数

1 个答案:

答案 0 :(得分:0)

两种可能的方式

  1. 您可以从conftest.py导入功能add,或将其移至更合适的位置。 (例如utils.py)

  2. 您可以创建返回功能的夹具,并在测试中使用它。像这样的东西。

conftest.py

import pytest


@pytest.fixture
def add():
    def inner_add(x, y):
        return x + y
    return inner_add

test_all.py

def test_all(add):
    assert add(1, 2) == 3

我无法想象情况何时会是一个好的解决方案。但我确定它存在。