पर सहेजते हैं इस पर मेरा दिमाग बिल्कुल खो रहा है। मैं यह नहीं समझ सकता कि यह क्यों हो रहा है। प्रत्येक बार जब मैं यह परीक्षण चलाता हूं, तो ऑब्जेक्ट सामान्य, गैर-परीक्षण डेटाबेस में सहेजा जाता है। हालांकि, परीक्षण के अंत में दोनों दावे विफल हो जाते हैं, कह रहे हैं कि वे डेटाबेस में किसी भी उपयोगकर्ता को नहीं ढूंढ सकते हैं, भले ही परीक्षण के हर बार मुझे स्थानीयहोस्ट पर बनाई गई वस्तुओं को हटाने के लिए व्यवस्थापक में जाना होगा। मैं अपनी सेटिंग्स में SQLITE3 का उपयोग कर रहा हूं, और मैं समझता हूं कि डेटाबेस को मारने के बजाय SQLITE परीक्षण स्मृति में चलाना चाहिए। मैंने खोज की है और खोज की है और वेब पर कोई उपयोगी जानकारी नहीं मिल रही है। यहां परीक्षण फ़ंक्शन है:Django कार्यात्मक LiveServerTestCase - सेलेनियम के साथ फ़ॉर्म जमा करने के बाद, ऑब्जेक्ट गैर-परीक्षण डेटाबेस
import time
import datetime
from django.test import TestCase, LiveServerTestCase
from django.core.urlresolvers import resolve
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from django.contrib.auth.models import User
from apps.registration.forms import RegistrationForm
class NewVisitorTest(LiveServerTestCase):
def setUp(self):
self.browser = webdriver.Firefox()
self.browser.implicitly_wait(3)
def tearDown(self):
self.browser.quit()
def test_registration_process(self):
# Goes to registration page
self.browser.get('http://localhost:8000/register/')
# User can find sign up form
registration_form = self.browser.find_element_by_id('id_registration_form')
# User can fill out sign up form
first_name_input = self.browser.find_element_by_id('id_first_name')
first_name_input.send_keys('Jim')
last_name_input = self.browser.find_element_by_id('id_last_name')
last_name_input.send_keys('Barrow')
date = datetime.date.today()
date_input = self.browser.find_element_by_id('id_birthday')
date_input.send_keys(str(date))
username_input = self.browser.find_element_by_id('id_username')
username_input.send_keys('jim_barrow')
password_input = self.browser.find_element_by_id('id_password')
password_input.send_keys('kittensarecute')
password_1_input = self.browser.find_element_by_id('id_password1')
password_1_input.send_keys('kittensarecute')
email_input = self.browser.find_element_by_id('id_email')
email_input.send_keys('[email protected]')
# User can submit sign up form
registration_form.submit()
# User is now registered as a user object
users = User.objects.all()
self.assertEqual(len(users), 1)
# User is now registered as a person object
persons = Person.objects.all()
self.assertEqual(len(persons), 1)
if __name__ == '__main__':
unittest.main()
यदि कोई अन्य संदर्भ है जो मैं प्रदान कर सकता हूं, तो मैं आपको खुशी से दिखाऊंगा। यह व्यावहारिक रूप से एक खाली परियोजना है, इसलिए सेटिंग.py में कोई अजीब या असामान्य सेटिंग्स नहीं है जो चीजों को भ्रमित कर सकती है। किसी भी तरह की सहायता का स्वागत किया जाएगा।
परीक्षण प्लेट के रूप में कभी भी SQLLite 3 का उपयोग न करें। यह सभी 58 तरीकों से रविवार में भयानक है। –
@limelights बस मेरी मशीन पर पोस्टग्रेस स्थापित और सेटअप करें और एक ही त्रुटि प्राप्त करें। मैं वास्तव में इस से निराश हो रहा हूँ। –
परीक्षण चलाने के लिए आप किस कमांड का उपयोग कर रहे हैं? – Alasdair