代码之家  ›  专栏  ›  技术社区  ›  George Shuklin

从pytest中的conftest加载测试的基类

  •  1
  • George Shuklin  · 技术社区  · 4 年前

    我们对许多应用程序进行了大量重复测试(testinfra)。我想创建由应用程序特定的测试类继承的BaseClass,以减少重复测试的样板(此服务正在运行吗?此端口正在侦听吗?)。

    我们在这样的结构中进行测试 /tests/{app-name}/test_{app_name}.py /tests/conftest.py 带有pytest fixture的文件。

    我正在想办法 BaseClass 在某个地方 conftest.py 或者在它附近并且能够导入它。

    问题:

    • 测试在CI中运行,我不想安装任何模块/包(这意味着我不能 pip install BaseClass和的模块 from thismodule import BaseClass )
    • 根据惯例,我们必须在中使用破折号 {app-name} .这是所有相对进口的 app-name 不是python的包,即使存在 __init__.py 在场。

    有没有合理的方法从特定文件加载类,或者从pytest免费获得它(在收集时很神奇)?

    0 回复  |  直到 4 年前
    推荐文章