0

実際、ここで何が間違っているのかわかりませんが、非常に単純で基本的な問題だと思います。

Widget17_Sorter.py と呼ばれるモジュール 1:

class Widget17_Sorter(object):

    def get_data_from_database(self, database_name, user, password, host ):
        ...do stuff here...

モジュール 2 と呼ばれる Test_Widget17_Sorter.py (実際には単体テスト)

import Widget17_Sorter

class Test(unittest.TestCase):

    ...do some other stuff here...

    def test_get_data_from_database(self):
        sorter = Widget17_Sorter.Widget17_Sorter()
        raw_data = sorter.get_data_from_database( self.database_name, 
                                    self.user, self.password, self.host )

テストを実行すると、次のエラー メッセージが表示されます。

ERROR: test_get_data_from_database (__main__.Test)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "TestWidget17_Sorter.py", line 50, in test_get_data_from_database
    raw_data = sorter.get_data_from_database( self.database_name,
AttributeError: 'Widget17_Sorter' object has no attribute 'get_data_from_database'

なんで?

4

1 に答える 1

0

この方法でインポートしてみてください:

from Widget17_Sorter import Widget17_Sorter
...
my_widget = Widget17_Sorter(...)
my_widget.get_data_from_database(...)

...両方のスクリプトを同じフォルダーに配置します...

于 2012-08-14T10:52:55.537 に答える