Jest: يجب أن يكون Jest "process.exit (0 | 1)" بعد انتهاء الاختبارات قيد التشغيل

تم إنشاؤها على ٣ مارس ٢٠١٧  ·  3تعليقات  ·  مصدر: facebook/jest


هل تريد طلب ميزة أو الإبلاغ عن خطأ ؟
ميزة / علة

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

إذا كان السلوك الحالي عبارة عن خطأ ، فالرجاء تقديم خطوات إعادة الإنتاج وإما عرض تجريبي من خلال https://repl.it/languages/jest أو مستودع أدنى على GitHub يمكننا من خلاله yarn install و yarn test .

ما هو السلوك المتوقع؟
يخرج Jest من العملية عند اكتمال جميع الاختبارات ولا يوجد شيء آخر يختبره Jest.

يرجى تقديم تكوين Jest الدقيق الخاص بك وذكر إصدار Jest والعقدة والغزل / npm ونظام التشغيل لديك.
لا أعتقد أنه مناسب ، لكن هنا:

  • الدعابة: v19.0.2
  • العقدة: v7.7.1
  • npm: 4.1.2
  • الغزل: 0.21.3
  • نظام التشغيل Linux 4.10.1-gentoo # 4 SMP PREEMPT الأربعاء 1 مارس 14:47:04 EST 2017 x86_64 Intel (R) Core (TM) i5-4300U CPU @ 1.90GHz GenuineIntel GNU / Linux

التعليق الأكثر فائدة

الجواب لم يحل المشكلة ...

ال 3 كومينتر

هذا ما يعنيه --forceExit ولكنه فتحة هروب. إذا لم تخرج Jest ، فهذا يعني أنك لا تقوم بالتنظيف بشكل صحيح بعد الاختبارات (استخدم afterAll ).

الجواب لم يحل المشكلة ...

cpojer - هل يمكنك إلقاء بعض الضوء على سبب اعتبار هذا الأمر بمثابة فتحة هروب ، وليس سلوكًا افتراضيًا؟

أتوقع أن يكون استدعاء الدعابة لغرض وحيد هو إجراء الاختبارات. بمجرد حل جميع الكتل الاختبارية بطريقة أو بأخرى ، ومعالجة كل كتلة after* ، ما سبب افتراض استمرار تشغيل العمليات التي تجاوزت Jest؟

المنظمة البحرية الدولية ، يجب قتل هؤلاء بشكل افتراضي. لدينا بعد * للتنظيف / الإغلاق الأنيق إذا لزم الأمر ، لكنني أراهن في معظم الوقت على أن الخروج الصعب لن يمثل أي مشاكل.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات