फ्यूलफेप - यूनिट टेस्टिंग

बड़ी परियोजनाओं को विकसित करने में इकाई परीक्षण एक आवश्यक प्रक्रिया है। Unit testsविकास के हर चरण में एप्लिकेशन के घटकों के परीक्षण को स्वचालित करने में मदद करें। यह तब सूचना देता है जब अनुप्रयोग का घटक परियोजना के व्यावसायिक विनिर्देश के अनुसार काम नहीं कर रहा होता है। यूनिट परीक्षण मैन्युअल रूप से किया जा सकता है लेकिन अक्सर स्वचालित होता है।

PHPUnit

FuelPHP फ्रेमवर्क PHPUnit परीक्षण ढांचे के साथ एकीकृत करता है। फ्यूलपीईपी ढांचे के लिए एक इकाई परीक्षण लिखने के लिए, हमें PHPUnit को सेट करना होगा। अगर PHPUnit इंस्टॉल नहीं है, तो इसे डाउनलोड और इंस्टॉल करें। हम निम्न कमांड का उपयोग करके अपने सिस्टम में PHPUnit की उपलब्धता की पुष्टि कर सकते हैं।

phpunit --version

यदि PHPUnit उपलब्ध है, तो आप निम्न के समान परिणाम देखेंगे।

PHPUnit 5.1.3 by Sebastian Bergmann and contributors.

यूनिट टेस्ट बनाना

इकाई परीक्षण लिखने के लिए फ्यूलपीईपी द्वारा प्रदान किया गया मानक स्थान ईंधन / एप / परीक्षण है। हम अलग-अलग फ़ोल्डरों में कंट्रोलर, मॉडल, व्यू और प्रेजेंटर्स के लिए यूनिट टेस्ट लिख सकते हैं। हमें Model_Employee ऑब्जेक्ट को मान्य करने के लिए एक यूनिट टेस्ट लिखें।

  • Step 1 - एक फ़ोल्डर बनाएं, ईंधन / ऐप / परीक्षण फ़ोल्डर के तहत मॉडल।

  • Step 2 - ईंधन / एप्लिकेशन / परीक्षण / मॉडल / फ़ोल्डर के तहत एक फ़ाइल, कर्मचारी बनाएँ।

  • Step 3 - PHPUnit द्वारा प्रदान की गई TestCase क्लास को बढ़ाकर एक नया परीक्षण वर्ग, Test_Model_Employee बनाएं।

  • Step 4 - एक विधि लिखें, testInstanceOfEmployee () PHPUnit's TestCase वर्ग द्वारा प्रदान की गई assertInstanceOf () पद्धति का उपयोग करके कर्मचारी वस्तु निर्माण को संपत्ति के लिए।

निम्नलिखित पूरा कोड है -

<?php  
   class Test_Model_Employee extends TestCase { 
      public function testInstanceOfEmployee() { 
         $this->assertInstanceOf(Model_Employee::class, new Model_Employee()); 
      } 
   }

टेस्ट ग्रुप बनाना

FuelPHP परीक्षण मामलों का एक समूह बनाने का विकल्प प्रदान करता है। एक समूह बनाना उतना ही सरल है जितना कि docblock विशेषता, @group को जोड़ना। आइए हम MyTest समूह के अंदर अपने परीक्षण मामले को शामिल करें।

<?php   
   /** 
      * @group MyTest 
   */ 
   class Test_Model_Employee extends TestCase { 
      public function testInstanceOfEmployee() { 
         $this->assertInstanceOf(Model_Employee::class, new Model_Employee()); 
      } 
   }

चालू परीक्षण

निर्देशिका में सभी परीक्षण चलाने के लिए, निम्न कमांड का उपयोग करें।

$ php oil test

परीक्षणों के एक विशिष्ट समूह को चलाने के लिए, निम्नलिखित कमांड का उपयोग करें।

$ php oil test --group = MyTest

कमांड निष्पादित करने के बाद, आपको निम्न प्रतिक्रिया प्राप्त होगी।

Tests Running...This may take a few moments.
PHPUnit 5.1.3 by Sebastian Bergmann and contributors.
                                        1 / 1 (100%).
Time: 123 ms, Memory: 8.00Mb
OK (1 test, 1 assertion)