我有一個非常簡單的Django應用程序,我試圖運行單元測試。在我的tests.py文件中,我試圖導入父應用程序視圖文件。我試過了。進口觀點,但得到了一個錯誤:在運行測試時未找到Django中已安裝的應用程序
SystemError: Parent module '' not loaded, cannot perform relative import
我讀到,當一個相對路徑不工作,你可以嘗試使用絕對路徑,所以我嘗試‘從菜單中導入的意見’,但不是得到了另一個錯誤:
ImportError: No module named 'menu'
當我爲應用程序運行本地服務器時,它工作得很好。它只有當我運行'覆蓋運行'覆蓋運行菜單/ tests.py'。由於它運行良好,並且該模塊位於我的設置的已安裝應用程序中,所以我不完全確定爲什麼會發生這種情況。
菜單/ tests.py
import unittest
from menu import views
class ModelTestCase(unittest.TestCase):
def setUp(self):
pass
def test_menu(self):
pass
if __name__ == '__main__':
unittest.main()
settings.py
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'menu',
'django_nose'
)
回溯
timothybaney$ coverage run menu/tests.py
Traceback (most recent call last):
File "menu/tests.py", line 3, in <module>
from menu import views
ImportError: No module named 'menu'
做你試圖將其重命名,即'mymenu'? – sergiuz
是的,只是試過了,不幸的是它沒有工作。 – JBT
你能顯示更多日誌嗎? – sergiuz