DynamicTest
के विपरीत, ParameterizedTest
कोर junit-jupiter-api
का हिस्सा नहीं है लेकिन (3.12.1. Required Setup देखें) junit-jupiter-params
नाम के एक अलग विरूपण साक्ष्य में है। ऐसा इसलिए है क्योंकि जुनीट 5 के मूल सिद्धांतों में से एक है "सुविधाओं पर विस्तार बिंदु पसंद करना" (Core Principles · junit-team/junit5 Wiki)।
जुनीट बृहस्पति एपीआई परिभाषित करता है कि जुनीट के विस्तार बिंदु के रूप में गतिशील परीक्षण कैसे बनाएं और पंजीकरण करें, जबकि जुनीट बृहस्पति पैराम्स पैरामीटर परीक्षणों को परिभाषित करने के लिए उच्च स्तरीय एपीआई को परिभाषित करता है।
JUnit 5.0 M5 Milestone की थीम वर्तमान में "गतिशील कंटेनर और मामूली एपीआई परिवर्तन" है। इन अपेक्षित परिवर्तनों के साथ परीक्षण डेवलपर्स न केवल गतिशील परीक्षण बनाने में सक्षम होंगे बल्कि गतिशील परीक्षणों के पेड़ (अन्य गतिशील कंटेनर और/या परीक्षण वाले गतिशील कंटेनर) जो कुछ ऐसा है जो वर्तमान में पैरामीराइज्ड परीक्षणों के साथ नहीं किया जा सकता है। ऐसा लगता है, मुझे लगता है, विनिर्देश-जैसे परीक्षण बनाने के लिए बहुत उपयोगी है।
संक्षेप में, जैसा कि मैंने इसे समझ लिया है, यह विचार है कि पहले "निम्न-स्तरीय" एपीआई (जैसे गतिशील कंटेनर/परीक्षण) के माध्यम से कोर एक्सटेंशन पॉइंट जारी करना है और फिर तृतीय पक्षों को उनके द्वारा लीवरेज एक्सटेंशन बनाने के लिए प्रोत्साहित करना और प्रोत्साहित करना है (उदाहरण के लिए पैरामीटर परीक्षण)।
अच्छा सवाल। चूंकि यह गतिशील परीक्षणों के रूप में वास्तव में स्पष्ट अनुप्रयोग नहीं है, विशेष रूप से क्योंकि उन्हें एक्सटेंशन बिंदु से समर्थित नहीं किया जाता है (देखें [# 371] (https://github.com/junit-team/junit5/issues/371)) । – Nicolai
हमारी टिप्पणी @ निकोलई के लिए धन्यवाद। मैंने आपके इनपुट पढ़े और मुझे लगता है कि मैं समझता हूं कि आपका बिंदु क्या है। हालांकि, यहां मेरा मुद्दा गतिशील परीक्षण बनाने के तरीके के बारे में नहीं है, केवल उपयोग के मामले को समझने के लिए जहां गतिशील परीक्षण विशेष रूप से उपयोगी हैं। मुझे यकीन नहीं है कि विस्तारित बैक गतिशील परीक्षण इसका उत्तर कैसे देगा। मैं जानना चाहता हूं कि डेवलपर्स गतिशील परीक्षण शुरू करके हल करने की कोशिश कर रहे हैं। – Yasin
उत्तरार्द्ध के बारे में: गतिशील परीक्षण पैरामीटर परीक्षण से पहले लंबे समय से बनाए गए थे। उन्हें शामिल करने का कारण यह सुनिश्चित करना था कि टूल रखरखाव इस तथ्य से अवगत हैं कि परीक्षण समय पर परीक्षण किए जा सकते हैं। ओह, मुझे अब याद है कि एक कारण [लैम्ब्डा परीक्षण] (https://blog.codefx.org/libraries/junit-5-dynamic-tests/#Lambda-Tests) को अनुमति देना था। – Nicolai