2012-05-12 2 views
6

जबकि त्रुटियों और फिक्स्चर के बिना पूरा किए गए सभी परीक्षण वास्तव में लोड किए जाते हैं। क्या यह Django 1.4 मुद्दा है?Django 1.4 कहता है "कोई डेटाबेस स्थिरता निर्दिष्ट नहीं है। कृपया कमांड लाइन में कम से कम एक स्थिरता का मार्ग प्रदान करें।"

कृपया ध्यान दें कि केवल कुछ एप्लिकेशन ही इस त्रुटि संदेश को उत्तेजित करते हैं (अनुप्रयोगों के यूनिट परीक्षणों और उनके संबंधित फिक्स्चर के बीच कोई वैचारिक अंतर नहीं है)।

अद्यतन 1:fasttest.py सामग्री:

DATABASES = {'default': 
    { 
    'ENGINE': 'django.db.backends.sqlite3', 
    'NAME': ':memory:', 
    } 
} 

~/django_project$ ./manage.py test appname --traceback --settings=fasttest 
Creating test database for alias 'default'... 
.....................No database fixture specified. Please provide the path of at least one fixture in the command line. 
. 
---------------------------------------------------------------------- 
Ran 22 tests in 8.426s 

OK 
Destroying test database for alias 'default'... 

अद्यतन 2: स्पष्ट रूप से टिप्पणी नहीं है, हालांकि मैं कोशिश करता के लिए आभारी हूँ, अंधेरे में ही शॉट्स रहे हैं। डेटाबेस कोई फर्क नहीं पड़ता, न तो SQLite3, न ही पोस्टग्रेज़ परीक्षण डीबी समस्या को हल करते हैं।

+0

हमें वास्तव में बहुत अधिक विस्तार की आवश्यकता है। क्या आप पूरे स्टैक ट्रेस को प्रश्न में कॉपी कर सकते हैं? आपकी सेटिंग्स.py फ़ाइल के डेटाबेस अनुभाग को देखना भी अच्छा होगा। – Paragon

+0

यदि मुझे अच्छी तरह से याद है तो आपको डीबी के लिए पथ निर्दिष्ट करने की आवश्यकता है यदि आप एसबीएल 3 को डीबी समर्थन के रूप में उपयोग करने जा रहे हैं। यह Django 1.3.1 में एक टिप्पणी की आवश्यकता होती थी। मैं निश्चित रूप से 1.4 के लिए यह नहीं कह सकता, लेकिन आप कोशिश कर सकते हैं। –

+0

असल में, मुझे लगता है कि कोलन डीबी के साथ समस्या है। उन्हें बाहर निकालने का प्रयास करें और देखें कि यह काम करता है या नहीं। –

उत्तर

7

मेरे पास टेस्ट फिक्स्चर के साथ एक ही समस्या थी जो 1.4 के तहत ठीक काम करता था।

मेरे लिए, मैं एक परीक्षण का मामला है, जहां मैं एक दृढ़ का उपयोग नहीं किया गया था, और इसलिए मैं इस तरह एक खाली सेट करने के लिए जुड़नार की स्थापना की गई थी:

class MyTestCase(TestCase): 
    fixtures = [] 

जब मैं उस लाइन पर टिप्पणी की, त्रुटि चला गया:

class MyTestCase(TestCase): 
# fixtures = [] 
+0

Django की 'TestCase._fixture_setup()' सामग्री की जांच करने के बजाय 'हैशट्र ('फिक्स्चर') की जांच करता है, फिर लोडडाटा कहता है जहां शिकायत आ रही है। आप कुछ गड़बड़ी सेट करके त्रुटि संदेश और वास्तविक स्थिरता लोडिंग दोनों से बच सकते हैं, क्योंकि लोडडाटा इसके बारे में शिकायत नहीं करता है: 'fixtures = ['BOGUS']' –

संबंधित मुद्दे