إذا قمت بكتابة اختبارات لمشروعك
واستخدمت factory_bot لإنشاء بيانات الاختبار ، أقدم إليكم جوهرة
factory_trace ، والتي ستساعدك في تحديث المصانع والسمات الخاصة بك.
ماذا تفعل؟
أثناء إطلاق الاختبارات الخاصة بك ، تراقب الأحجار الكريمة استخدام بعض المصانع ، وفي نهاية التنفيذ تعرض تقريرًا عن النتائج.
$ FB_TRACE=1 rspec total number of unique used factories & traits: 3 total number of unique unused factories & traits: 2 unused global trait with_email unused factory admin
تكامل المشروع
بالنسبة إلى RSpec ، يكفي تثبيت الأحجار الكريمة ويمكنك استخدامه ، لأي اختبار آخر ، يكفي القيام بمعالجات بسيطة:
بالتوازي / تنفيذ قطعة
غالبًا ، إذا استغرقت الاختبارات وقتًا طويلاً ، يتم تشغيلها في عمليات مختلفة في أجزاء ، ولكي تكون البيانات المتعلقة بالمصانع غير المستخدمة صحيحة ، فمن الضروري معالجة الإحصاءات من جميع الاختبارات.
يمكن القيام بذلك على النحو التالي:
كيف يعمل؟
بفضل تطبيق
factory_bot باستخدام
ActiveSupports::Notifications
من السهل إضافة رد اتصال عند استخدام المصنع:
ActiveSupport::Notifications.subscribe('factory_bot.run_factory') do |_name, _start, _finish, _id, payload| name = payload[:name] traits = payload[:traits] storage[name] ||= Set.new storage[name] |= traits end
وبعد جمع كل المعلومات ، نجد المصانع غير المستخدمة مع خوارزمية بسيطة.
آخر النص
جرب ذلك بنفسك وشارك بتعليقاتك ، سأكون ممتنًا!
شكرا لاهتمامكم