1

これはおそらくnoobの問題です。申し訳ありませんが、これまでのところ解決策を見つけることができませんでした。簡単に言えば、理解できない何らかの理由srcで、テストでディレクトリからモジュールにアクセスできません。私のプロジェクト設定は次のようになります。

src/package/module.py
tests/package/module_test.py

私のテストはおおよそ次のようになります。

import package
import unittest
class module_test(TestCase):
   def testSomeMethod(self):
       m = package.SomeClass() #there is class of that name in module.py

PyDev で実行構成の設定を確認したところ、テストを実行すると、srcとの両方testsが PYTHONPATH にあることがわかりました。しかし、このテストを実行しようとすると、エラーが発生します'module' object has no attribute 'SomeClass'

私は何を間違っていますか?

4

1 に答える 1

1

その場合import package、パッケージ内のモジュールではなく、パッケージをインポートします。モジュールをインポートする場合は、インポートする必要がありますfrom package import module(次に、クラスをmodule.SomeClassではなく、として参照しpackage.SomeClassます)。

パッケージは、モジュールのグループのコンテナです。モジュール内のすべてに魔法のようにアクセスすることはできません(ただし、モジュールを自動的にインポートすることはできます)。パッケージ内の個々のモジュールをインポートする必要があります。

于 2012-08-04T20:19:54.327 に答える