我有一个包含以下目录结构的存储库:
repo_folder\
----src\
----__init__.py
----src1.py
----src2.py
----src3.py
----testing\
----specific_test.py
----requirements.txt
specific_test.py
就在它的第一行:
import os
import sys
sys.path.insert(0, os.path.dirname(os.getcwd()))
import src.src1
import src.src2
import src.src3
# lots of asserts
当我从specific_test.py
文件夹或testing
文件夹中运行repo_folder
时,它可以正常运行,但本地计算机 。
问题在于,当我尝试从我的codeship
帐户运行此帐户时,它会给我一个Import Error
。
错误如下所示:
ImportError
testing/specific_test.py
src.src1
你知道这会是什么问题吗?
您对更好的替代方案有什么建议吗?
答案 0 :(得分:0)
这似乎是一个路径问题。您本地计算机上似乎发生的事情是您将CWD插入路径,最有可能返回repo_folder\
。从那里,您可以通过src.src1
导入您的src文件,因为src是容器。在您的代码帐户上,cwd(当前工作目录)不正确,因此无法找到src.
的{{1}}部分。检查第src.src1
行返回的内容,更重要的是sys.path.insert(0, os.path.dirname(os.getcwd()))
并验证它是否导致os.path.dirname(os.getcwd())