رجل الكهف هو حزمة بيثون أن يوزع ويؤكد HTML5 كشوف ذاكرة التخزين المؤقت. تطبيقات HTML5 من الصعب إرضاءه المعروف عن كشوف مخبأ لهم، وأنه من الصعب للتأكد من أن كافة المكونات هي كما ينبغي أن تكون.
يوفر الكهف واحدة النصي سطر الأوامر، check_manifest، والتي تسحب صفحة HTML، الورطات لمدة الموارد المستخدمة، يوزع ذاكرة التخزين المؤقت واضح، ويؤكد على الموارد ضد البيان:
على & nbsp؛ URL check_manifest
مكتوبة مشاكل مع البيان إلى الإخراج القياسي. المزيد من التفاصيل حول العملية هو إخراج إذا قمت بتعيين مستوى سجل لشدة مختلفة مع --level = التبديل LEVEL، حيث LEVEL هو التصحيح، INFO، تحذير، أو خطأ.
استخدام برنامجي
وقد تم تصميم الكهف لتكون صالحة للاستعمال من التعليمات البرمجية الخاصة بك، على سبيل المثال، وذلك كجزء من عملية التحقق من صحة أكبر، أو كجزء من وحدة الاختبارات في تطبيق الويب الخاص بك.
ويتم العمل الكهف من قبل الطبقة ManifestChecker. إنشاء مثيل مع اثنين من المساعدين: وظيفة get_url أن جلب البيانات من عناوين المواقع، وكائن مسجل أن يحصل على الرسائل المسجلة:
من الكهف ManifestChecker استيراد
get_url مواطنه (URL): ...
مسجل = ...
man_checker = ManifestChecker (get_url = get_url، مسجل = مسجل)
ثم استدعاء الأسلوب check_manifest مع عنوان URL لصفحة HTML:
man_checker.check_manifest (رابط)
يتم إرجاع أية قيمة: تم تسجيل الإخراج إلى كائن مسجل. رؤية جمل التوثيق في التعليمات البرمجية المصدر للحصول على التفاصيل.
جانغو وحدة الاختبارات
كمثال على استخدام البرنامجي، وهنا طريقة واحدة لاستخدام رجل الكهف في اختبار جناح جانغو:
من الكهف ManifestChecker استيراد
فئة TestManifest (django.test.TestCase):
على & nbsp؛ الإعداد صفر (النفس):
على & nbsp؛ self.checker = ManifestChecker (get_url = self.get_url، مسجل = الذات)
على & nbsp؛ self.caveman_log = []
على & nbsp؛ مواطنه get_url (النفس، رابط):
على & nbsp؛ "" ". وثمة وظيفة get_url ل` caveman.ManifestChecker` "" "
على & nbsp؛ # استخدام العميل اختبار جانغو لجلب URL.
على & nbsp؛ استجابة = self.client.get (رابط)
على & nbsp؛ عودة response.status_code، response.content والاستجابة
على & nbsp؛ # سجل الرسائل رجل الكهف خطيرة في `self.caveman_log`.
على & nbsp؛ مواطنه التصحيح (النفس، جي اس): تمر
على & nbsp؛ مواطنه المعلومات (النفس، جي اس): تمر
على & nbsp؛ محذرا من صفر (النفس، جي اس): self.caveman_log.append (MSG)
على & nbsp؛ صفر خطأ (النفس، جي اس): self.caveman_log.append (MSG)
على & nbsp؛ مواطنه test_my_manifest (النفس):
على & nbsp؛ "" "رجل الكهف تنتج أية تحذيرات أو أخطاء لذاكرة التخزين المؤقت واضح." ""
على & nbsp؛ self.checker.check_manifest ("/")
على & nbsp؛ self.assertEqual ([]، self.caveman_log)
المزيد من المعلومات
رجل الكهف يمكن تحميلها من PyPI: http://pypi.python.org/pypi/caveman
المواصفات اضح مخبأ HTML5 هي في http://www.w3.org/TR/html5/offline.html
مستندات في http://nedbatchelder.com/code/caveman.
مستودع رمز وتعقب المسألة هي في bitbucket.org
المتطلبات:.
بيثون
القيود:
رجل الكهف تسحب فقط على الصفحة HTML تحدده. على الرغم من أنه يؤكد وصلات إلى صفحات HTML أخرى ضد الظاهر، فإنه لا سحب تلك المرتبطة إلى صفحات والتحقق من مواردها.
لا يتم التحقق من صحة قواعد معينة من المواصفات HTML5.
لم يتم العثور على التعليقات