由于导入错误而无法运行测试

问题描述 投票:0回答:1

我有以下项目结构:

|   .gitignore
|   README.md
|   call_test_outside.py
|   main.py
|   setup.cfg
|   setup.py
|- src
  |- PropTools
    |   __init__.py
    |   PropTools
      |   __init__.py
      |   SQLiteWrapper.py
      |   dates.py
      |   prices.py
      |- transactions.py
    |   config
      |   __init__.py
      |- settings.py
    |- tests
      |   __init__.py
      |- transactions_tests.py

问题: 当我在

transactions_tests.py
文件夹中运行
tests
时,我得到
ImportError

from ..PropTools.transactions import TransactionType, InstrumentType, get_transactions
ImportError: attempted relative import with no known parent package

但是如果我尝试从根文件夹中的

call_test_outside.py
执行相同的操作,它就会起作用。

代码:

transactions_test.py
代码(在测试文件夹中):

from ..PropTools.transactions import TransactionType, InstrumentType, get_transactions

print(get_transactions)

call_test_outside.py
代码:

from src.PropTools.tests import transactions_tests
    
print(transactions_tests.get_transactions)

我如何或应该测试包的开发?

python python-packaging
1个回答
0
投票

看起来问题是

transactions_tests.py
上面的目录是
tests
所以尝试从那里访问
PropTools
是行不通的。

希望这有帮助!

© www.soinside.com 2019 - 2024. All rights reserved.