无法从文件夹导入模块

时间:2019-06-28 15:49:13

标签: python selenium python-unittest

我正在使用VSCODE作为编辑器,并使用Python 3.7 我有这种文件夹结构

project
|-- util
   | -- drivers.py
   | -- data.py
   | -- __init__.py
|-- test
   | -- driver_test.py
   | -- __init__.py
main.py

我想将util文件夹中的drivers.py导入到driver_test.py中 我试图像这样进行基本导入

from util.drivers import Driver

由于找不到util模块而无法正常工作,然后我使用了另一种方法,即在sys.path中添加了一个文件夹。像这样

# driver_test.py
sys.path.append(os.path.abspath('./util'))
import drivers

我对几个输出错误感到非常困惑。 当我从控制台运行单元测试时,出现错误,提示找不到驱动程序

import drivers
ModuleNotFoundError: No module named 'drivers'

如果我通过右键单击Run current test file在vscode编辑器中运行测试文件,则错误输出与未找到drivers.py文件中包含的硒驱动程序不同

from selenium import webdriver
ModuleNotFoundError: No module named 'selenium'

Selenium模块实际上运行良好,我只是想对它进行大多数单元测试。我做错了什么以及如何解决? 并且可以仅通过导入而无需使用sys.path来包含模块。

1 个答案:

答案 0 :(得分:1)

您可能希望将PYTHONPATH设置为project目录。在this discussion的StackOverflow论坛或official Python website上有更多相关内容。