मैं एक Django आवेदन पर काम कर रहा हूँ। हम अपने मोंगो डेटाबेस में कतार लिखने के लिए अजवाइन का उपयोग कर रहे हैं। मैं एक समारोह के लिए एक कार्यात्मक परीक्षण (सेलेनियम का उपयोग कर) लिखने की कोशिश कर रहा हूं जो अजवाइन में कुछ कतार देता है।मैं अपने कार्यात्मक परीक्षणों के लिए परीक्षण डेटाबेस में लिखने के लिए django अजवाइन कैसे प्राप्त करूं?
समस्या यह है कि सेलरी परीक्षण डेटाबेस के बजाय मुख्य मोंगो डेटाबेस को लिखती है। परीक्षण डेटाबेस में लिखने वाले अजवाइन के उदाहरण के साथ काम करने के लिए मैं अपने कार्यात्मक परीक्षण कैसे स्थापित कर सकता हूं?
हम 'django_nose.NoseTestSuiteRunner'
का उपयोग कर रहे हैं हमारे TEST_RUNNER
के रूप में।
अद्यतन:
मैं कैसे परीक्षण के लिए अजवाइन का एक और उदाहरण का उपयोग करने के यह पता लगाने की नहीं कर पाए हैं, लेकिन मैं कार्यात्मक परीक्षण के लिए अजवाइन बायपास करने के लिए एक रास्ता मिल गया है।
मेरी settings.py
में:
FUNC_TEST_COMMAND=['functional']
func_test_command = filter(lambda element: element in FUNC_TEST_COMMAND, sys.argv)
if len(func_test_command) > 0:
CELERY_ALWAYS_EAGER = True
यह जब कार्यात्मक परीक्षण सूट चल रहा एक संदेश कतार के माध्यम से कुछ भी भेजे बिना एक AsyncResult
के व्यवहार की नकल करता। (अधिक जानकारी के लिए http://celery.readthedocs.org/en/2.4/configuration.html#celery-always-eager देखें।)
यह समाधान संभवतः कार्यात्मक परीक्षणों के लिए आदर्श नहीं है, क्योंकि यह एप्लिकेशन परतों में से एक को काटता है।