如何将某些功能和类从模块导入测试文件?

时间:2018-12-26 14:53:12

标签: python python-3.x pytest

如何将 NestedValueError 类和 validate_item 函数从模块导入test.py?

我应该使用conftest.py作为模块和测试文件之类的中介吗?

# /modules/errors.py 

class EmptyValueError(Exception):
      pass 

#/modules/validate_item.py
def validate_item():
    pass

#/tests/test.py

import pytest 

def test_item_validate_exception_nested_value():
    with pytest.raises(EmptyValueError):
        validate_item({})    

1 个答案:

答案 0 :(得分:1)

简单:

from modules.errors import EmptyValueError 
from modules.validate_item import validate_item

但是请确保在/with the following command中运行pytest:

python3 -m pytest test/

来自pytest文档(上面链接):

  

这几乎等同于直接调用命令行脚本pytest [...],除了通过python进行调用还会将当前目录添加到sys.path