python模块导入(为什么这样工作?)

时间:2018-12-03 14:30:21

标签: python import directory-structure

当我从python语言开始时,我希望能够构建我的项目目录,以使行为测试框架保持工作的清晰和整洁。 这是我的基本文件夹结构:

root/
  sample/
    classes/
      simple_class.py
tests/
  features/
    steps/
      simple_class_test.py

在我的脚本simple_class_test.py中,我注意到我能够对此进行编码:

from sample.classes.simple_class import SimpleClass

@Given('I have a simple class')
def i_have_a_simple_class(context):
  context.simpleClass = SimpleClass()

当我使用命令behave时,尽管我 关于导入和模块的研究,我无法说明from sample.classes.simple_class...的工作方式和原因。

您能帮我理解吗?

编辑:我注意到从根目录启动behave命令时,该命令有效。 如果我从root\tests目录启动该命令,它将失败并显示Exception ModuleNotFoundError,这似乎是合乎逻辑的。

所以我可能会问如何允许我的测试找到将要测试的类?

0 个答案:

没有答案