اذهب إلى المحتوى

السؤال

نشر

هل هناك إمكانية لكتابة وحدات إختبار خاصة بمشروع جانغو Django دون إعداد قاعدة بيانات خاصة بهذا الأمر؟ أريد اختبار المنطق البرمجي الخاص بجزء من المشروع وهذا الجزء لا يتطلب إعداد قاعدة بيانات لكي يعمل.

وعلى الرغم من سرعة إعداد قاعدة بيانات للإختبار إلا أنني أجد نفسي لا أحتاجها في أغلب الأحيان، كيف أقوم بعمل هذا الأمر؟

Recommended Posts

  • 1
نشر

يمكنك أن تقوم بهذا الأمر من خلال عمل صنف جديد يرث من الصنف DjangoTestSuiteRunner وتقوم بعمل override للتوابع setup_databases و teardown_databases بحيث تتخطى عملية إعداد قاعدة البيانات بالشكل التالي:

# نستدعي الصنف DjangoTestSuiteRunner
from django.test.runner import DiscoverRunner

class NoDbTesSuiteRunner(DiscoverRunner):
  def setup_databases(self, **kwargs):
    pass

  def teardown_databases(self, old_config, **kwargs):
    pass

الآن يمكنك إستخدام الصنف الذي قمنا بإنشائه لتشغيل الإختبارات tests من خلال الأمر التالي:

python manage.py test app --testrunner=app.filename.NoDbTestRunner

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...