2016-10-03 1 views
6

जेस्ट डॉक्स में राज्य: "जेस्ट जावास्क्रिप्ट वातावरण को वर्चुअलाइज करता है और कार्यकर्ता प्रक्रियाओं के समानांतर में परीक्षण चलाता है।"जेस्ट में समानांतर में चलने वाली एक फ़ाइल के अंदर परीक्षण हैं?

लेकिन एक फ़ाइल के अंदर कई परीक्षणों के बारे में क्या, क्या वे समानांतर में चलते हैं या यह कथन केवल परीक्षण फ़ाइलों पर लागू होता है? क्या मैं मान सकता हूं कि उपस्थिति के क्रम में और धारावाहिक में चलाने वाली एक फ़ाइल में परीक्षण?

उत्तर

8

हां, आप सुरक्षित रूप से एक फ़ाइल के अंदर परीक्षणों को देख सकते हैं जो उपस्थिति के क्रम में चलेंगे। आप प्रत्येक it ब्लॉक में console.log डालकर इसे साबित कर सकते हैं।

शायद यह उल्लेखनीय है कि निष्पादन/बाहरी राज्य के आदेश पर भरोसा करना आम तौर पर खराब अभ्यास है ... और आप कभी नहीं जानते, जेस्ट (या वर्तमान अंतर्निहित परीक्षण धावक, जैस्मीन) उन्हें यादृच्छिक रूप से चलाने का निर्णय ले सकता है एक नए संस्करण में आदेश।

+0

अब भी, 'केवल' और 'स्किप' का उपयोग करके आप परेशानी हो सकते हैं यदि आप निष्पादन के आदेश पर भरोसा करते हैं। – Shawn

+1

खैर, समस्या यह है कि 'पहले से पहले' और 'बाद में' विभिन्न मामलों में बेकार होगा जब परीक्षण 'async' फ़ंक्शन होते हैं, क्योंकि यदि जेस्ट समानांतर में' async' परीक्षण चलाते थे, तो अब यह संभव नहीं है राज्य को रीसेट करें या प्रत्येक टेस्ट के बाद साफ़ करें, जो परीक्षण को बग के लिए बहुत प्रवण करेगा। 'पहले से पहले' और 'बाद में' परीक्षणों के बीच सेट अप या साफ करने के लिए सेवा करते हैं, और इसके लिए सार्थक होने के लिए परीक्षणों को श्रृंखला में निष्पादित करने की आवश्यकता होती है, समानांतर में नहीं। यह समानांतर में 'async' फ़ंक्शन परीक्षण चलाने के लिए जेस्ट (या किसी भी धावक) के लिए एक खराब एपीआई डिज़ाइन होगा ... – trusktr

+0

@trusktr' पहले '''' और 'बाद में' आदि को स्पष्ट रूप से श्रृंखला में चलाने की आवश्यकता होगी, लेकिन प्रत्येक व्यक्ति 'इसे' समानांतर में चलाया जा सकता है यदि यह अधिक कुशल साबित हुआ। – riscarrott

संबंधित मुद्दे